我有一个SPSS格式的7G文件。它有一些调查数据,并有评论级别分数和句子级别分数。一个评论可以有多个句子,一个调查最多有4个评论。
我正在尝试在SPSS中进行随机抽样,因此我可以在R中使用较小的文件,但如果我进行简单随机抽样,那么我无法将整个调查和评论保持在一起。
我想要的是从这个大文件中取样并只挑选5%的surveyId,因此整个调查的行保持在一起。
Surv_ID Sentence_ID Comment_ID Sentence_Score Comment_Score
A001 001 1 3.5 2
A001 002 1 2.8 2
A001 001 2 1.4 -1
A001 002 2 -2.9 -1
A001 003 2 -3.1 -1
A002 001 1 2.3 3
A002 002 1 4.3 3
A002 001 2 1.2 1
A002 002 2 0.85 1
A002 003 2 0.79 1
A002 001 3 3.5 2
A002 002 3 -3.1 2
A002 003 3 2.8 2
A003 001 1 1 1
A003 001 2 -0.9 -3
A003 002 2 -4.3 -3
A003 003 2 -4.0 -3
A003 001 3 3.4 3
A003 002 3 4.4 3
A003 001 4 2.8 2
答案 0 :(得分:1)
COMPUTE RandNum=RV.UNIFORM(0,1).
AGGREGATE OUTFILE=* MODE=ADDVARIABLES OVERWRITE=YES /BREAK=Surv_ID /RandNum=MAX(RandNum).
SORT CASES BY RandNum Surv_ID.
COMPUTE SurvIDNum=SUM(LAG(SurvIDNum),(LAG(Surv_ID)<>Surv_ID)=1 OR $CASENUM=1).
AGGREGATE OUTFILE=* MODE=ADDVARIABLES /TotN=N.
COMPUTE SurvIDNumPCT=SurvIDNum/TotN.
SELECT IF (SurvIDNumPCT<0.05).
Surv_ID
Surv_ID
Surv_ID
&#39; 对于上面的步骤,这里有相应的说明,在哪里可以找到相关的GUI等价物。