看板 Statistics 關於我們 聯絡資訊
[軟體程式類別]: SAS [程式問題]: 計算加總問題 [軟體熟悉度]: 低(1~3個月) [問題敘述]: 各位前輩好,在處理資料時,遇到需要計算某個變數內各種類別的次數,想請教一下 是否有方法可以處理,謝謝 資料: ID date X1 X2 1 0101 N G 1 0101 N L 1 0101 G N 1 0102 G N 1 0102 L L 2 0101 G N 2 0101 G G 2 0103 L N 希望的結果: ID DATE X1_N X1_G X1_L X2_N X2_G X2_L 1 0101 2 1 0 1 1 1 1 0102 0 1 1 1 0 1 2 0101 0 2 0 1 1 0 2 0103 0 0 1 1 0 0 想知道每個ID 每天的 X1變數及X2變數的 N,G,L各有幾個,有爬文過,但 好像都是變數內為數值做加總,如果變數內是文字,不知道有沒有方法 可以產生一個新的資料是計算出現的次數(因為id有上百萬個),請高手指點一下,謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.115.87.140 ※ 編輯: summerslam 來自: 140.115.87.140 (03/19 14:47)
west1996:proc freq 03/19 15:16
summerslam:w大,freq我有試過,但資料數很多,所以是想看有沒 03/19 15:31
summerslam:方法可以弄成一個新的資料,不過還是謝謝你! 03/19 15:31
※ 編輯: summerslam 來自: 140.115.87.140 (03/19 15:33) ※ 編輯: summerslam 來自: 140.115.87.140 (03/19 15:50)
moonbat:if then ? 03/19 16:33
※ 編輯: summerslam 來自: 140.115.87.140 (03/19 16:57)
summerslam:m大的意思是將id分開來個別加總嗎? 可是id很多@@ 03/19 16:58
tew:freq後再transpose比較快一點吧 03/19 17:21
感謝t大,目前大致上用id較少的資料可以用t大說的方法弄出來,但在id很多的情況下, 會一直跑出output window is full,這樣就不知道該怎樣處理了,可以有辦法不要有 output結果,直接匯出資料就好嗎? 程式碼:(只先算x1的) PROC FREQ DATA=A; TABLE X1/ OUT=B; BY ID DATE ; RUN; PROC TRANSPOSE DATA=B OUT=C; BY ID DATE; ID X1; RUN; 這程式碼在id數很多時似乎就會出現error了,懇請高手指點,感謝。 ※ 編輯: summerslam 來自: 114.37.59.199 (03/19 21:07)
tew:noprint 03/19 22:28
west1996:是只有X1和X2要計算,然後裡面都只可能有N G L嗎? 03/19 23:24
summerslam:感謝t大指點,是的w大,只會出現這三種可能 03/19 23:54
※ 編輯: summerslam 來自: 114.37.59.199 (03/19 23:55)
tew:proc freq data=a noprint; 03/20 10:13
summerslam:謝謝t大! 03/20 14:35