使用 header 在 sas 中输入 .csv 文件
infile .csv file in sas with header
我有一个名为 dataset1.csv 的 csv 文件,它包含 header 和 3 个变量 att1(字符)、att2 和 att3(数字数据)。
我尝试了以下代码
filename test 'C:\Users02911\Desktop\Practice\SAS\Dataset';
data dataset1;
infile test(dataset1.csv) dsd delimiter=',';
input att1 $ att2 att3;
run;
我想要的输出是忽略第一行
在 infile
语句中使用 firstobs
选项,这将确保您从第二行读取数据
data dataset1;
infile test(dataset1.csv) dsd delimiter=',' firstobs=2;
input att1 $ att2 att3;
run;
使用proc import
就方便多了,不需要手动分配列名
/** FOR CSV Files uploaded from Unix/MacOS **/
FILENAME CSV "/folders/myfolders/train.csv" TERMSTR=LF;
/** Import the CSV file. **/
PROC IMPORT DATAFILE=CSV
OUT=WORK.MYCSV
DBMS=CSV
REPLACE;
run;
/** Print the results. **/
PROC PRINT DATA=WORK.MYCSV; RUN;
/** Unassign the file reference. **/
FILENAME CSV;
run;
我有一个名为 dataset1.csv 的 csv 文件,它包含 header 和 3 个变量 att1(字符)、att2 和 att3(数字数据)。
我尝试了以下代码
filename test 'C:\Users02911\Desktop\Practice\SAS\Dataset';
data dataset1;
infile test(dataset1.csv) dsd delimiter=',';
input att1 $ att2 att3;
run;
我想要的输出是忽略第一行
在 infile
语句中使用 firstobs
选项,这将确保您从第二行读取数据
data dataset1;
infile test(dataset1.csv) dsd delimiter=',' firstobs=2;
input att1 $ att2 att3;
run;
使用proc import
就方便多了,不需要手动分配列名
/** FOR CSV Files uploaded from Unix/MacOS **/
FILENAME CSV "/folders/myfolders/train.csv" TERMSTR=LF;
/** Import the CSV file. **/
PROC IMPORT DATAFILE=CSV
OUT=WORK.MYCSV
DBMS=CSV
REPLACE;
run;
/** Print the results. **/
PROC PRINT DATA=WORK.MYCSV; RUN;
/** Unassign the file reference. **/
FILENAME CSV;
run;