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 do you know about sas data set?
You need to perform an analysis on a massive dataset by groups, but are unable to sort the data due to memory constraint. How would you accomplish the task?
How to display duplicate observations in data?
how do u validate sas program
Differentiate between format and informat? : sas-grid-administration
Have you ever linked SAS code? If so, describe the link and any required statements used to either process the code or the step itself.
How will you react when, while consulting a SAS documentation manual to get an answer to a problem, someone says hey, I thought you were supposed to know all that stuff already, and not have to look it up in a book?
Difference b/n proc means and proc summary procedures?
i have a dataset with var1,var2,var3; i want to upload the titles for the variables . How can we?
How to create a permanent sas data set?
What does the RUN statement do?
I am looking to buy a sas advance book. So any one can guide me that which one i should buy.