我正在尝试使用Wilkinson测试来比较几个统计软件。要读取第一个问题中的ASCII文件,我尝试将测试保存为六个单独的.txt文件,使用ANSI编码。我也尝试将测试保存为.nfo文件。软件(SPSS)应将文件编码为ABCDE。在SPSS中,当我插入数据并使用空格分隔符而不是File->读数据它只返回1 2 3 4 5“ONE”。有谁知道我做错了什么? 谢谢!
答案 0 :(得分:0)
对于这个例子,我使用了V18,只是通过GUI我能够导入文件。下面是逐字显示的GUI(唯一的区别是我选择使用空格和逗号作为分隔符。)
GET DATA
/TYPE=TXT
/FILE="C:\Users\Andy W\Desktop\test.txt"
/DELCASE=LINE
/DELIMITERS=" ,"
/QUALIFIER='"'
/ARRANGEMENT=DELIMITED
/FIRSTCASE=1
/IMPORTCASE=ALL
/VARIABLES=
V1 F5.3
V2 F4.2
V3 F4.3
V4 F13.11
V5 A4
V6 A7
V7 A3
V8 F1.0
V9 A1
V10 F1.0
V11 A4.
CACHE.
EXECUTE.
DATASET NAME DataSet1 WINDOW=FRONT.
我不太确定为什么它会在V6之后产生无聊的变量,但是看起来一切都很好。它将5D-0
解释为字符串,但它应该将其解释为什么?您也只能选择一个文本限定符,尽管在此示例中不会阻碍导入的字符串。下面是截图。
答案 1 :(得分:0)
我使用Andy的SPSS代码作为源代码。不幸的是我没有SPSS可用来测试它。希望它有效。
GET DATA
/TYPE=TXT
/FILE="C:\Users\Andy W\Desktop\test.txt"
/DELCASE=LINE
/DELIMITERS=" ,"
/QUALIFIER='"'
/ARRANGEMENT=DELIMITED
/FIRSTCASE=1
/IMPORTCASE=ALL
/VARIABLES=
A F1
B F1
C F1
D F1
E F1
NAME$ A7.
EXECUTE.
不知道如何定义两者"和'作为QUALIFIER。
我尝试用PSPP做同样的任务(因为我没有SPSS可用)。以下代码很好地工作:
GET DATA
/TYPE=TXT
/FILE="/home/djhurio/temp/test.txt"
/IMPORTCASES=ALL
/ARRANGEMENT=DELIMITED
/DELCASE=LINE
/DELIMITERS=" ,"
/QUALIFIER="""'"
/VARIABLES=
A F1
B F1
C F1
D F1
E F1
NAME$ A5.
list
/var = all.
得到以下结果:
A B C D E NAME$
- - - - - -----
1 2 3 4 5 ONE
1 2 3 4 5 TWO
1 2 3 4 5 THREE
1 2 3 4 . FOUR
1 2 3 4 5 FIVE
1 2 3 4 5 SIX