“數據”像是液體一般,可以倒進各種形狀的容器。
如果你正在使用SPSS,並且希望把電子的或者不是電子化的原始數據讀進SPSS中。這里,我想和你聊聊我在“輸入數據”時的一些做法與困惑。
實驗名稱:實驗一 輸入數據
實驗目的:
(1)學會使用SPSS的簡單操作。
(2)靈活使用SPSS的輸入數據操作。
(3)掌握4種輸入數據的方法,並作出評價。
實驗內容:
(1)在SPSS中直接輸入一個數據表;
(2)在SPSS中從excel表導入數據表;
(3)在SPSS中從word表中粘貼數據表;
(4)在SPSS中編程輸入數據表。
實驗步驟:
1、直接輸入:先打開SPSS,然后在“變量視圖”,填寫相關數據的變量信息(如:名稱、類型、寬度、小數點位數、標簽、值、缺失、列、對齊、測量、角色)。如果想要在數據集2輸入數據可以如下操作——點擊“文件”→“新建”→“數據”,然后打開“數據視圖”,填寫相關數據的變量信息。
注意:①這種方法,可以鍛煉你對原始數據的變量屬性的判斷與分析。(關於變量屬性的介紹見圖六或《SPSS變量屬性的簡介》)
②工作繁瑣,如果原始數據是電子文件,推薦“讀取數據”的方法,而不是直接輸入。
2、從excel表導入數據表:點擊“文件”→“打開”→“數據”,在“打開數據”對話框中(在“查找位置”找到數據文件的地址,“文件類型”改為“Excel”),找到數據文件后,點擊打開,在下一個對話框中點擊確定。最后在變量視圖中修改變量屬性,已達到要求。
注意:①方便快捷,但是會讀取一些不必要的信息。
②在最后變量視圖中應該作出應有的修改。
③上述操作與“導入數據”操作效果一樣。(“文件”→“導入數據”→“Excel”,接着的操作如上述)
3、從word表中粘貼數據表:先在變量視圖窗口中輸入變量屬性,在word表中復制數據表,在SPSS中第一個格子右鍵粘貼。
注意:①中文列的直接復制粘貼常會出現如下錯誤——寬度不夠、變量類型錯誤、缺失值無法判斷。
②一個漢字占3單位寬度,一個數字或者一個字母占1單位寬度。(詳見《SPSS變量屬性的簡介》)
4、編程輸入數據表:“文件”→“新建”→“語法”,在語法窗口中輸入相應代碼。 主要有兩種方法:DATA LIST 和 GET DATA。DATA LIST又有3中形式——固定式(fixed)、自由式(free)、列表式(list),各有優劣。如果原始數據是記錄在電子文件上的建議使用 GET DATA。
代碼模板:
1 DATA LIST [FILE='file'] [ENCODING='encoding specification'] 2 3 [{FIXED }] 4 {FREE } [{("delimiter", "delimiter",..., TAB)}] 5 {LIST } 6 7 [RECORDS={1}] [SKIP={n}] [{TABLE }] 8 {n} {NOTABLE} 9 10 /{1 } varname {col location [(format)]} [varname ...] 11 {rec #} {(FORTRAN-like format) } 12 13 [/{2 } ...] [/ ...] 14 {rec #}
1 GET DATA 2 /TYPE = {ODBC } 3 {OLEDB} 4 {XLS } 5 {XLSX } 6 {XLSM } 7 {TXT } 8 9 10 /FILE = ’filename’ 11 12 13 Subcommands for TYPE = ODBC and OLEDB 14 /CONNECT=’connection string’ 15 [{/ENCRYPTED }] 16 {/UNENCRYPTED} 17 /SQL ’select statement’ 18 [’select statement continued’] 19 20 21 Subcommands for TYPE=ODBC, TYPE=OLEDB, XLS, XLSX, and XLSM 22 [/ASSUMEDSTRWIDTH={255**}] 23 {n } 24 25 26 Subcommands for TYPE = XLS, XLSX, and XLSM* 27 [/SHEET = {INDEX**} {sheet number}] 28 {NAME } {’sheet name’} 29 [/CELLRANGE = {RANGE } {’start point:end point’ }] 30 {FULL**} 31 [/READNAMES = {on** }] 32 {off } 33 [/DATATYPEMIN PERCENTAGE=value] 34 [/HIDDEN IGNORE=(NO**}] 35 {YES } 36 [/LEADINGSPACES IGNORE={NO**}] 37 {YES } 38 [/TRAILINGSPACES IGNORE={NO**}] 39 {YES } 40 41 Subcommands for TYPE = TXT 42 [/ENCODING = {'UTF8' }] 43 {'UTF16' } 44 {'UTF16BE'} 45 {'UTF16LE'} 46 {'LOCALE' } 47 [/ARRANGEMENT = {FIXED }] 48 {DELIMITED**} 49 [/FIRSTCASE = {n}] 50 [/DELCASE = {LINE** }]1 51 {VARIABLES n} 52 [/FIXCASE = n] 53 [/DELIMITERS = {"delimiters"}] 54 [/QUALIFIER = "qualifier"] 55 [/IMPORTCASE {ALL**} 56 {FIRST n} 57 [/DATATYPEMIN PERCENTAGE=value] 58 [/LEADINGSPACES IGNORE={NO**}] 59 {YES } 60 [/MULTIPLESPACES IGNORE={NO**}] 61 {YES } 62 63 VARIABLES subcommand for ARRANGEMENT = DELIMITED 64 /VARIABLES = varname {AUTO } 65 {format} 66 67 VARIABLES subcommand for ARRANGEMENT = FIXED 68 /VARIABLES varname {startcol - endcol} {AUTO | format} 69 {/rec#} varname {startcol - endcol} {AUTO | format} 70 71 [/MAP]
注意: DATA LIST的FIXED,在讀取TXT文件里的數據時,同列同寬度。
代碼示例:
1 GET DATA 2 /TYPE=XLSX 3 /FILE='G:\用Excel抽取簡單隨機樣本.xlsx' 4 /SHEET=name 'Sheet1' 5 /CELLRANGE=FULL 6 /READNAMES=ON 7 /DATATYPEMIN PERCENTAGE=95.0 8 /HIDDEN IGNORE=YES. 9 EXECUTE.
1 DATA LIST FREE/姓名(A9) 銷售量(F3). 2 BEGIN DATA 3 張松 234 4 王翔 143 5 田雨 187 6 徐麗娜 161 7 ... 8 END DATA.
1 DATA LIST FILE='C:\Users\lenovo\Desktop\1.txt' 2 FIXED 3 /1 姓名 (T1,A6) 銷售量 8-12. 4 EXECUTE.
1 DATA LIST LIST/姓名(A9) 銷售量(F3). 2 BEGIN DATA 3 張志傑 150 4 趙穎 228 5 元芳 154 6 END DATA.
困惑:①變量屬性的判斷?
②代碼模板的解讀方法?
③95.0的由來?
④上述四種代碼的優劣?
參考資料:
【1】《SPSS統計分析基礎教程第二版》 張文彤,鄺春偉等 “高等教育出版社”
【2】《IBM SPSS Statistics V25.0文檔》
(文中所用圖片,使用時,請注明出處即本鏈接地址。)
圖示操作步驟:
1、直接輸入:

圖一:步驟流程圖

圖二 打開變量視圖

圖三 填寫變量屬性

圖四 在數據視圖填入數據
圖五 變量屬性的一些介紹
2、從excel表導入數據表:

圖六 讀取數據流程圖
運行的一些截圖:

圖七 打開數據窗口截圖

圖八 讀取Excel文件截圖

圖九 結果截圖

圖十 可在變量視圖中修改變量屬性
3、從word表中粘貼數據表:

圖十一 Word表中粘貼數據流程

圖十二 變量視圖的修改

圖十三 結果展示
4、編程輸入數據表:

圖十四 使用編程輸入數據

圖十五 語法窗口截圖

圖十六 輸出窗口

圖十七 data List free截圖

圖 十八 data List List截圖

圖十九 data List file截圖

圖二十 data List file中的TXT數據結果
