i have multiple .csv files in a unix directory.
every file is having variable names as header.even for empty file also.
suppose take 3 files
a.csv
b.csv
c.csv
a.csv contains data as
name;age,salary;
raja;34;4000;
ravi;33;5000;
kumar;25;3000;
b.csv contains data as
name;age,salary;
ajay;40;4500;
and c.csv contains
name;age,salary; (only headers)
Now i want to import and append all these files in to a single dataset.
i tried infile statement with *.csv to import all at a time.
but i m not getting correct data.
please help me . its urgent.
thank you in advance
Answers were Sorted based on User's Feedback
/*So for this, you have to create a macro to store the path of the folder where your files are located .*/
/*STEP 1:*/
%let dirname = C:UsersRANAJIDesktopSAS_Class_CodeMultiple_csv_files;
filename DIRLIST pipe "dir /B &dirname*.csv";
data dirlist ;
length fname $256;
infile dirlist length=reclen;
input fname $varying256. reclen ;
run;
proc print data = dirlist;
run;
/* so , once your all files are located there, you can proceed with step 2 */
/* Step2*/
data all_text (drop=fname);
length myfilename $100;
length name $25;
set dirlist;
filepath = "&dirname"||fname;
infile dummy filevar = filepath length=reclen end=done missover;
do while(not done);
myfilename = filepath;
input name $ x1 x2 x3;
output;
end;
run;
proc print data=all_text;
run;
you will have all the files appended in the new dataset.
| Is This Answer Correct ? | 0 Yes | 0 No |
/*step 1: create a macro for the destination folder */
%let dirname = C:UsersRANAJIDesktopSAS_Class_CodeMultiple_csv_files;
filename DIRLIST pipe "dir /B &dirname*.csv";
data dirlist ;
length fname $256;
infile dirlist length=reclen;
input fname $varying256. reclen ;
run;
proc print data = dirlist;
run;
/* step 2 , append all the files in one. */
data all_text (drop=fname);
length myfilename $100;
length name $25;
set dirlist;
filepath = "&dirname"||fname;
infile dummy filevar = filepath length=reclen end=done missover;
do while(not done);
myfilename = filepath;
input name $ x1 x2 x3;
output;
end;
run;
proc print data=all_text;
run;
| Is This Answer Correct ? | 0 Yes | 0 No |
What is the purpose of using the N=PS option?
What are TEAEs
2 Answers Accenture, Quintiles,
what are several options for creating reports in web report studio? : Sas-bi
what is information maps?
What is the purpose of _character_ and _numeric_?
What is PDV?
Name few SAS functions?
What are the parameters of scan function?
what is the difference between DUPKEY and NODUPKEY???
To what type of programms have you used scratch macros?
In ARRAY processing, what does the DIM function do?
what is sas enterprise intelligence architecture? : Sas-bi