[程式] SAS sql組合計算問題:(

看板Statistics作者 (no matter)時間9年前 (2015/06/09 14:16), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串1/2 (看更多)
想要做到兩個資料可以1.組合2.再做計算 data AA; (有x001-x004共16項) Idy _name_ COL1 X001 X001 12000 X001 X002 0 X001 X003 100 X001 X004 100 X002 X001 5000 X002 X002 101 X002 X003 0 X002 X004 905 . . . . data BB; Idy _name down X001 X001 200 X002 X002 5905 X003 X003 92 X004 X004 3328 結果可以這樣~ Idy _name_ COL1 tot qoo(col1/tot) X001 X001 12000 200 0.0xx X001 X002 0 200 0 X001 X003 100 200 0.5 X001 X004 100 200 0.5 X002 X001 5000 5905 . X002 X002 101 5905 . X002 X003 0 5905 . X002 X004 905 5905 以 X003 X001 5000 95 此 X003 X002 101 95 類 X003 X003 0 95 推 X002 X004 905 95 X004 X001 5000 3328 X004 X002 101 3328 X004 X003 0 3328 X004 X004 905 3328 ====我的程式如下======= proc sql; create table DDD as select AA.idy, AA._name_, BB.idy, trans.col1, case when AA.idy=BB.idy and AA.idy^=AA._name_ then down end as tot from AA, BB; quit; data DDD; set DDD; qoo=col1/tot; run; ======================== 用sql寫出來可以計算,但不知道為何數據一多~配對到的結果就不對了。 不知道是不是程式有問題?還是可以用其他方式? 無力...來求解~先謝謝^^ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.33.219 ※ 文章網址: https://www.ptt.cc/bbs/Statistics/M.1433830610.A.325.html

06/10 12:56, , 1F
感覺只是JOIN的方式有問題
06/10 12:56, 1F

06/10 13:39, , 2F
只是要把bb的down加進aa吧,用merge就好了,merge by id
06/10 13:39, 2F

06/10 13:39, , 3F
y
06/10 13:39, 3F
文章代碼(AID): #1LTeJICb (Statistics)
文章代碼(AID): #1LTeJICb (Statistics)