作者kingbee (kingbee)
看板Statistics
標題Re: [問題] 請教一下有關SAS如何輸入外部資料到程式裡
時間Thu Feb 8 17:03:01 2007
※ 引述《rung365 (嚮往運動快樂時光)》之銘言:
: ※ 引述《buski (......)》之銘言:
: : 建議你不要存成EXCEL檔,存成dbf, csv都可以
: : 根據以往的經驗,直接把EXCEL檔轉進SAS有掉資料的可能性
: : 而且是不可預測的! 你有5500筆,萬一掉了數十筆,你不容易察覺
: : 轉進SAS之後建議跑一些描述性的統計量,像均值 驗證資料是不是完整轉進來
: : 補充一下,我所謂掉資料不是整筆不見,而是該筆資料,某些變項的數值不見了
: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
: 多謝buski大大解答
: 我有試過將檔案存成dbf跟csv的格式
: 不過他會跳出一個視窗說明有些功能會因此而遺失
: 不知道這樣會不會產生大大所說的問題
: 還有我有試過kingbee大大說的方法
: 它會產生一個SAS格式的檔案
: 直接點選它的話可以秀出資料
: 但要怎樣將它與我所要的執行的程式做結合
: 因為小弟是要執行SAS裡的pls程式進行分析
: 以下是小弟利用kingbee大大的方法所產生的檔案程式
: PROC IMPORT OUT= WORK.tt
: DATAFILE= "D:\SAS\mantest.dbf"
: DBMS=DBF REPLACE;
: GETDELETED=NO;
: RUN;
: 小弟是將匯入的資料檔名訂為tt
: 以下是小弟想要將資料與pls程式做結合並分析的程式碼
: 但是出現錯誤
: 希望大大們能幫小弟解惑一下哪邊有問題
: data tt;
: input x1-x31 y @@;
: proc pls data=tt;
: model y = x1-x31;
: run;
你打錯嚕叫進資料和使用資料是兩件事情
你叫進去的資料叫tt
但你要用的資料不能跟你叫的資料同名
故
data kingbee;
set tt;
proc pls data=kingbee;
model y=x1-x31;
run;
至於你要用的tt資料裡面的變項
若你不會命名變項的話叫進SAS裡面他會重新命名變項
而不會單純叫做x1 x2 x3 x4 ......
你要到SAS左邊的視窗有個叫做explorer(和results樹狀視窗共存的那裡)
打開Libraries 的work資料櫃(圖案很像一個櫃子)
就可以找到tt檔並打開
可以出現像excel那樣的格子
在最上面的變項連點兩下(就滑鼠點檔案那樣)
會出現變項資訊
Name那一組就是你要使用的名稱
Label就是顧名思義標籤參考用的
所以他預設的變項名稱因該會是 _col_ 之類的
: 附註一下小弟的分析內容
: 分析資料檔有5500筆觀察值
: 而每一項觀察值皆有32個變數
: 但會利用這32項變數中的其中一項變數當作y值來進行分析
: 希望各位大大能幫忙解惑
: 真的是感激不進!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.128.140.121
→ kingbee:SAS真是深奧阿~~ 誰有玩過他裡面的遊戲阿~~~ 02/08 17:05
推 rung365:謝謝kingbee大大的解說 02/10 00:55
→ rung365:我再試試看~~謝謝~~ 02/10 00:56