SAS,最小/最大使用proc方法?
我有类似这样的约会SAS,最小/最大使用proc方法?,sas,max,min,summary,data-manipulation,Sas,Max,Min,Summary,Data Manipulation,我有类似这样的约会 Date Rainfall Highest_Tmp_Reached Lowest_Tmp_Reached 1/5/93 5 10 3 1/6/93 12 K K 1/2/95 K 3
Date Rainfall Highest_Tmp_Reached Lowest_Tmp_Reached
1/5/93 5 10 3
1/6/93 12 K K
1/2/95 K 3 4
..continued .. .. ..
K表示缺少的值。我需要在我的整个数据集中找到最小降雨量、达到的tmp和达到的最低tmp,最好是作为一个总结(因此我试图使用proc方法)。我还将数据转换为数字,以确保它能够运行(如果这是正确的转换方式)
我在PROC的尝试意味着:
DATA WORK.tempdata;
INFILE 'T:Data\tempdates.csv'
DELIMITER = ',' MISSOVER DSD LRECL=32767 FIRSTOBS=2 ;
INFORMAT date mmddyy10. ;
INFORMAT rainfall $3. ;
INFORMAT highest_temp_reached $3. ;
INFORMAT lowest_temp_reached $4. ;
INPUT date
highest_temp_reached NUM
lowest_temp_reached NUM
rainfall NUM ;
RUN;
proc means data=WORK.tempdata min median max;
output out=WORK.tempdata min=min median=median max=max;
run;
PROC PRINT;
FORMAT DATE MMDDYY10.;
RUN;
使用proc means上的STACKODS选项获取所需的表
proc means data=WORK.tempdata min median max STACKODS;
Ods output summary=work.want;
run;
PROC PRINT data=want;
RUN;
使用proc means上的STACKODS选项获取所需的表
proc means data=WORK.tempdata min median max STACKODS;
Ods output summary=work.want;
run;
PROC PRINT data=want;
RUN;
我不知道你的问题是什么。你的out数据集应该使用不同的名称,否则你会重写初始数据。Out=汇总最小值=。并通过var语句指定proc means中的变量。试图找到降雨/温度列的最小值和最大值。运行代码时,日志会说什么?它说有一些无效的行(其中缺少值,所以我认为可以),但它仍然计算一些内容。它给了我一个包含最小值、中值、最大值的表,其中包含数据集中不存在的错误数字,如-1670612200、7800。这些数字看起来像是一个累加的总和。我不知道你的问题是什么。你的out数据集应该使用不同的名称,否则你会重写你的初始数据。Out=汇总最小值=。并通过var语句指定proc means中的变量。试图找到降雨/温度列的最小值和最大值。运行代码时,日志会说什么?它说有一些无效的行(其中缺少值,所以我认为可以),但它仍然计算一些内容。它给了我一个包含最小值、中值、最大值的表,其中包含数据集中不存在的错误数字,如-1670612200、7800。这些数字看起来像是一个累积的总和。