[程式] SAS call symput如何不要只看最後一列

看板Statistics作者時間9年前 (2016/06/16 13:57), 9年前編輯推噓0(002)
留言2則, 1人參與, 最新討論串1/3 (看更多)
[軟體程式類別]: SAS [程式問題]: call symput [軟體熟悉度]: 中等 [問題敘述]: 請問我有一組數據如下,每個ID各有Q1~Q3三個變數,欄位string說明要把 哪幾個變數相加 ID Q1 Q2 Q3 string 1 3 1 2 sum(Q2,Q3) 2 1 2 3 sum(Q1,Q2,Q3) 3 4 1 3 sum(Q1,Q2) 現在希望增加一欄位score,依照string的指示來加總可以得到如下的值 ID score 1 3 2 6 3 5 目前利用call symput程式如下,但會變成每個人的score都統一以最後一人(ID3)的 string為準,即每個人的score都是Q1+Q2 Data compute; set data1; call symput('sum', string); score = ∑ Run; ID score(錯) 1 4 2 3 3 5 想請板上高手指點一下,該怎麼修正? 謝謝 ※ 編輯: edsmom (211.76.175.169), 06/16/2016 13:59:39

06/17 23:31, , 1F
call symput得到的macro variable不能在同一個data
06/17 23:31, 1F

06/17 23:32, , 2F
step裡面使用,有誤請指正
06/17 23:32, 2F
文章代碼(AID): #1NOZ---2 (Statistics)
討論串 (同標題文章)
文章代碼(AID): #1NOZ---2 (Statistics)