我使用if语句创建一个新变量,但是不起作用。我查了一下,找不到问题所在。
data sockeye;
infile 'c:/sockeye.csv';
length data $8.;
input data $ sockeye;
if data='29-Jul' then sampweight =250/15;
if data='30-Jul' then sampweight =250/15;
run;
data n_boats;
length data$8.;
data = '29-Jul';_total_=250;output;
data = '30-Jul';_total_=250;output;
run;
proc surveymeans data=sockeye N=n_boats mean sum;
strata data / list;
var sockeye;
weight sampweight;
run;
答案 0 :(得分:0)
对于第一部分,您正在尝试读取.csv文件。根据我的经验,使用导入向导可以做得更好。这是特别的。适用于日期,这在SAS(以及许多其他程序)中很难处理。
对于第二部分,带有_前缀和后缀的变量由SAS创建。我不是积极的,但我认为你不能改变它们;我建议不要尝试。
一般情况下,我会避免将变量命名为'data'这样的东西,这是SAS中的关键字。此外,该变量名称没有信息。显然,这些是日期。因此,变量名称应该类似于dateXXX,其中XXX表示日期是什么。