Re: [問題] SAS資料處理

看板Statistics作者 ( 將心比心)時間15年前 (2009/06/16 09:08), 編輯推噓2(207)
留言9則, 4人參與, 最新討論串18/19 (看更多)
我只想到變通的方法 若單一ID 單一年份 有很多地點和物品時 需要靠MARCO來寫 但我只把我想法寫出來 自己在去修改MARCO吧 data king ; input id$ year$ local$ item$ cost; cards ; 101 1999 台北 蚵仔麵線 40 101 1999 台南 棺材板 50 101 1999 淡水 阿給 30 101 2000 日本 拉麵 100 102 1999 美濃 紙傘 150 102 1999 台北 牛肉麵 100 103 2000 美國 漢堡 200 103 2008 美國 披薩 300 ; proc sort data=king ; by id year local ; proc transpose data=king out=ts1; by id year; var local item cost; run; data t1; set ts1; keep id year col1 ; run; proc sort data=t1 ; by id year; proc transpose data=t1 out=f1 PREFIX=var1; by id year; var col1; run; data t2; set ts1; keep id year col2 ; run; proc sort data=t2 ; by id year; proc transpose data=t2 out=f2 PREFIX=var2; by id year; var col2; run; data t3; set ts1; keep id year col3 ; run; proc sort data=t3 ; by id year; proc transpose data=t3 out=f3 PREFIX=var3; by id year; var col3; run; proc sort data=f1 ; by id year; proc sort data=f2 ; by id year; proc sort data=f3 ; by id year; data king2; merge f1 f2 f3 ; by id year; drop _NAME_; run; 若有其他人有更好的方法也請幫忙了 ※ 引述《a15321 (a15321)》之銘言: : 有個SAS問題卡關多日,想請教板上前輩 : 我有一筆資料是長這樣 (舉例) : ID 年份 地點 物品 金額 : ============================================== : 101 1999 台北 蚵仔麵線 40 : 101 1999 台南 棺材板 50 : 101 1999 淡水 阿給 30 : 101 2000 日本 拉麵 100 : 102 1999 美濃 紙傘 150 : 102 1999 台北 牛肉麵 100 : 103 2000 美國 漢堡 200 : 103 2008 美國 披薩 300 : 希望能弄成以下結果 : ID 年份 地點1 物品1 金額1 地點2 物品2 金額2 地點3 物品3 金額3 : ========================================================================= : 101 1999 台北 蚵仔麵線 40 台南 棺材板 50 淡水 阿給 30 : 101 2000 日本 拉麵 100 . . . . . . : 102 1999 美濃 紙傘 150 台北 牛肉麵 100 . . . : 103 2000 美國 漢堡 200 . . . . . . : 103 2008 美國 披薩 300 . . . . . . : 原資料有上萬筆 : 希望把所有 同ID且同年份 的項目合成一項 : 後面就把項目改成 地點1,物品1,金額1....直到 地點n,物品n,金額n : 我試了幾天,用PROC Transpose或PROC SQL都做不出來 : 請問這在SAS中有辦法做嗎? 請各位前輩指點一下,感激不盡! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.29.135.126

06/16 22:56, , 1F
好奇問一下
06/16 22:56, 1F

06/16 22:57, , 2F
台北 蚵仔麵線 40<--> 台北 蚵仔麵線 80
06/16 22:57, 2F

06/16 22:57, , 3F
算同一筆?
06/16 22:57, 3F

06/16 23:21, , 4F
樓上是在哪看到台北蚵仔麵線80?
06/16 23:21, 4F

06/16 23:44, , 5F
需求訪談啊 先問清楚規則 寫法不同啊
06/16 23:44, 5F

06/17 09:30, , 6F
我有寫錯? 看不懂liton的問題?
06/17 09:30, 6F

06/17 09:37, , 7F
台北 蚵仔麵線 80 與 40 不同一項 所以會出現在物品4
06/17 09:37, 7F

06/17 09:38, , 8F
只是我沒寫那麼多 其他就交給MARCO來處理了
06/17 09:38, 8F

06/19 15:55, , 9F
非常感謝! 我最後也是用類似方法硬做XD
06/19 15:55, 9F
文章代碼(AID): #1ADl2H2z (Statistics)
討論串 (同標題文章)
文章代碼(AID): #1ADl2H2z (Statistics)