作者qfchi ( )
看板Statistics
标题Re: [问题] 请教sas资料加总问题
时间Thu Jun 26 16:24:29 2008
可以试试看proc sql里面的group by
proc sql; /*test是新生成的data set*/
create table test as select
*,
sum(a1) as sum_a1, /*sum_a1是新生成的变数*/
sum(b1) as sum_b1.
sum(c1) as sum_c1,
sum(d1) as sum_d1,
sum(e1) as sum_e1,
sum(f1) as sum_f1
from tmp
group by code, yrmo;
quit;
形式二的也是用类似的概念 你可以试试看^^
※ 引述《wsnoopy70 (气温)》之铭言:
: 资料项目 code name yrmo a1 b1 c1 d1 e1 f1
: 2880 华南金 9103 10 . . 20 . .
: 2880 华南 9103 . 10 . 40 . .
: 2880 华南金 9106 25 10 . . . .
: 2880 华南票券9106 . . 10 12 . .
: 2881 富邦金 9103 . . 20 30 . .
: 2881 富邦银 9103 11 12 . 10 . .
: 2882 国寿 9103 . . . . . 33
: 2888 新寿 9103 . . . . . 10
: 2892 一银证 9103 . . . . 55 .
: (.=无资料)
: 想要将同code 和 同yrmo 作加总
: 如 同样2880 和9103有两笔资料,要做出
: finance= 10+20+10+40
: 请问要如合做出
: 形式一:
: code name sub yrmo a1 b1 c1 d1 e1 f1
: 2880 华南金 11 9103 10 . . 20 . .
: 2880 华南 11 9103 . 10 . 40 . .
: 2881 富邦 11 9103
: 2882 国寿 21 9103
: 2892 一银证 31 9103
: 假设我要将sub作为分类(分三类:11 21 31 ) 金融业、证券业、寿险三类
: 形式二:
: code sub yrmo finance
: 2880 11 9103 80
: 2880 11 9106 57
: finance的加总要同code和yrmo
: 我写成 (因为不会加sub这个项目,所以先写下面这个形式)
: data one; set 上一个已经merge过的资料夹;
: finance = a1+b1+c1+d1;
: proc sort; by code name yrmo;
: proc print; run;
: 结果出现
: code name yrmo a1 b1 c1 d1 finance
: 2880 华南 9103 . 10 . 40 .
: finance 出现点的情况
: 请问我要相加 的时候出现什麽问题?
: 请帮忙解答 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.150.89