Re: [問題] 請教sas資料加總問題
可以試試看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
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):