我正在尝试修改现有的.csv文件并将新版本保存到其他位置。任务是:
1)将不同的标签放在变量名称上
2)有条件地修改其中一个变量的内容
%let infile=/.../file.csv;
%let outfile=/.../new_file.csv;
data _null_ ;
infile "&infile" dsd dlm=',' lrecl=2000 truncover ;
file "&outfile" dsd dlm='|' lrecl=200 ;
length var1-var5 $161 ;
input var1-var5 ;
put (var1-var3 var5) (+0) ;
label var1='#var1' var2='Variable 2';
if var5 = 'donkey' then var3 = 'donkey '||var3 ;
run;
我是否需要实际导入初始文件,对其进行更改,然后将其写回?
答案 0 :(得分:0)
CSV文件没有名称或标签,只有列标题。如果要更改列标题,请仅更改第一行的值。
%let infile=/.../file.csv;
%let outfile=/.../new_file.csv;
data _null_ ;
infile "&infile" dsd dlm=',' lrecl=2000 truncover ;
file "&outfile" dsd dlm='|' lrecl=200 ;
length var1-var5 $161 ;
input var1-var5 ;
if _n_=1 then do;
var1='#var1'; var2='Variable 2';
end;
else do;
if var5 = 'donkey' then var3 = 'donkey '||var3 ;
end;
put (var1-var3 var5) (+0) ;
run;