Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在SAS中进行行求和_Sas_Sum - Fatal编程技术网

如何在SAS中进行行求和

如何在SAS中进行行求和,sas,sum,Sas,Sum,我需要使用SAS对数据进行逐行求和。数据文件如下所示 Dress_ID 29/8/2013 31/8/2013 1006032852 2114 2274 1212192089 151 275 1190380701 6 7 我想根据着装Id对2013年8月29日和2013年8月31日这两列进行汇总 问候, Aditya一种方法是使用sum(of _NUMERIC)函数。如果您使用它,请确保将Dress_ID格式化为字符变量,因为这

我需要使用SAS对数据进行逐行求和。数据文件如下所示

Dress_ID    29/8/2013   31/8/2013
1006032852  2114        2274
1212192089  151         275
1190380701  6           7
我想根据着装Id对2013年8月29日和2013年8月31日这两列进行汇总

问候,


Aditya

一种方法是使用
sum(of _NUMERIC)
函数。如果您使用它,请确保将Dress_ID格式化为字符变量,因为这将对一行中的所有数字变量求和。如果向数据集中添加额外的数字字段,也可能会遇到一些问题,但现在看来,这应该可以解决您的问题

这可以写成:

data want;
  set have;
Total = sum(of _NUMERIC_);
run;

这将在数据集中创建一列“总计”,其中包含总计。

如果数据集中只有两个变量,则可以使用SQL进行操作:

Proc Sql;
Create table Sum_table as 
Select Dress_id, Date1+date2 as sum_of_dates
from dataset_dress;
quit;

日期1和日期2是您的2013年8月29日和2013年8月31日。变量名不能以date开头,但这仅限于在我没有错的情况下使用。

是否只有两列,还是更多?每个
服装id
是否只出现一次?如果只有几列,并且
dress\u id
只出现一次,则可以使用
+
sum(col1,col2,…)
使用PROC TRANSPOSE和col求和。另外,一篇有用的文章是“使用procsql汇总和转换数据”。