Matrix SPSS:从矩阵中选择列或行的子集
如何从SPSS中的矩阵中选择列或行的子集? 给出下面的例子,我想计算一个包含X的前两列的矩阵X2Matrix SPSS:从矩阵中选择列或行的子集,matrix,spss,Matrix,Spss,如何从SPSS中的矩阵中选择列或行的子集? 给出下面的例子,我想计算一个包含X的前两列的矩阵X2 MATRIX. COMPUTE X = {1, 2, 2; 0, -1, 1; 1, 1, -2}. * Compute new matrix X2 that contains the first two columns of X MAGIC CODE ;) END MATRIX. SPSS中矩阵子集运算的语法是什么?您可以对矩阵进
MATRIX.
COMPUTE
X = {1, 2, 2;
0, -1, 1;
1, 1, -2}.
* Compute new matrix X2 that contains the first two columns of X
MAGIC CODE ;)
END MATRIX.
SPSS中矩阵子集运算的语法是什么?您可以对矩阵进行子集运算,因此它将是简单的
COMPUTE XSub=X(:,1:2)。
下面的完整示例
MATRIX.
COMPUTE X = {1, 2, 3; 4, 5, 6; 7, 8, 9}.
COMPUTE Y=MAKE(NROW(X),2,0).
LOOP i=1 to NROW(Y).
LOOP j=1 to NCOL(Y).
COMPUTE Y(i,j)=X(i,j).
END LOOP.
END LOOP.
PRINT X.
PRINT Y.
END MATRIX.
MATRIX.
COMPUTE X = {1, 2, 2;
0, -1, 1;
1, 1, -2}.
COMPUTE XSub = X(:,1:2).
PRINT XSub.
END MATRIX.
对于评论中的附加问题,
1:n
基本上被SPSS理解为1 2 3….的行向量。。。。n
。但是,您可以创建自己的向量来子集矩阵,例如{1,3}
或{2,2}
或{3,1}
或其他。最后一个示例将首先返回子集合矩阵中的第三列,第二列返回第一列。示例如下:
MATRIX.
COMPUTE X = {1, 2, 2;
0, -1, 1;
1, 1, -2}.
COMPUTE XSub = X(:,{3,1}).
PRINT XSub.
END MATRIX.
打印出来的
Run MATRIX procedure:
XSUB
2 1
1 0
-2 1
------ END MATRIX -----
你可以把矩阵子集,看看我的答案。不需要循环。我知道会有比我提供的循环解决方案更简单的方法!我已经好几年没有使用
MATRIX
来记住它的所有功能了。谢谢。如果您不介意的话,还有一个附加问题:)如何选择非相邻列,例如1和3?示例添加了@MarkHeckmann。同样的想法也适用于选择行。