附加是一個數據集示例,其中ID#列的某些值相同,但Dollar Amount列對於相同的ID#具有不同的值。我怎樣才能在ID#相同的行上添加美元金額,並且實質上爲該ID#創建一個彙總行?該列表比這更長,因此指定每個ID#不是一個選項。SAS跨行添加
Q
SAS跨行添加
-2
A
回答
1
有SQL選項爲好,但這是一個會怎麼做一個運行總計/總和在數據的一步。
data have;
input id $1. dollar_amount 8.;
format dollar_amount dollar25.;
cards;
1 24
2 53
2 67
3 35
4 86
5 245
6 353
6 56
7 21
;
run;
proc sort data=have noequals; /*Only run if not already sorted*/
by id;
run;
data want(drop=dollar_amount);
set have;
by id;
if first.id then dollar_total = .;
format dollar_total dollar25.;
dollar_total + dollar_amount;
if last.id then output;
run;
0
如果你不想使用PROC SQL,並且希望將輸入數據中的實際摘要行(我認爲這是你問的是什麼),這裏有一個使用標誌來識別簡單的數據步驟和行:
data have;
input id $1. dollar_amount 8.;
format dollar_amount dollar25.;
cards;
1 24
2 53
2 67
3 35
4 86
5 245
6 353
6 56
7 21
;
run;
proc means data = have noprint;
by id;
var dollar_amount;
output out=sum_data (drop=_type_ _freq_) sum=dollar_amount ;
run;
data sum_data; set sum_data;
sum_row=1;
run;
data final;
set have sum_data;
run;
proc sort data = final;
by id sum_row;
run;
如果你只是想通過唯一的ID產生資金的輸出數據集,那麼就使用類似:
proc means data = have noprint;
by id;
var dollar_amount;
output out = want (drop=_type_ _freq_) sum=dollar_amount_sum;
run;
0
相關問題
- 1. SAS:添加if列
- 2. 在條件下(sas)縱向跨越行求和(sas)
- 3. SAS添加過濾器
- 4. 跨行用df添加列condtionally
- 5. MySQL - 跨多列添加行總數
- 6. 表上添加列跨度和行跨度上飛
- 7. 用JQuery在跨度中添加跨度
- 8. 將參考線添加到SAS熱圖
- 9. 在SAS中按組添加案例
- 10. SAS Proc SQL向變量添加常量
- 11. SAS:添加觀察和填充
- 12. 將標題添加到SAS輸出圖
- 13. 將序列號添加到SAS
- 14. sas爲列名添加前綴
- 15. 按組添加seq編號SAS
- 16. 如何在SAS中添加網格線
- 17. 移調/添加新的colums在SAS
- 18. 跨數據集添加
- 19. 添加跨度功能
- 20. 添加跨度到PHP
- 21. 在html中添加跨域
- 22. 執行循環以有條件地添加值SAS
- 23. SAS跨多個變量的比較值
- 24. 來自.txt的SAS輸入,其中輸入跨越多行
- 25. 在Rails 3上添加跨度 - 我必須添加跨度的位置?
- 26. SAS行分欄
- 27. SAS宏執行
- 28. 在一行SAS
- 29. SAS sql。如何使用行列sas sql?
- 30. 添加()ing時間跨度似乎不會添加它們