我有一个(nxc+n+c) 1矩阵。我希望取消选择最后的n+c行,并将其余的行转换为nxc矩阵。下面是我尝试过的,但是它返回一个矩阵,每个元素在一行中都是相同的。我不知道这是为什么。有人能帮帮我吗?
tmp=x[1:n*c,]
Membership <- matrix(tmp, nrow=n, ncol=c)发布于 2015-04-24 15:02:04
您有一个长度为x的向量n*c + n + c,在进行提取时,在代码中添加一个逗号。你应该做tmp=x[1:(n*c)]。请注意括号的重要性,因为如果您使用tmp=x[1:n*c],它将取从1到n的范围,乘以c --给出一个新的范围,然后根据这个新的范围提取。
例如,您希望避免:
(1:100)[1:5*5]
[1] 5 10 15 20 25你也可以不把你的头弄乱索引:
matrix(head(x, n*c), ncol=c)https://stackoverflow.com/questions/29850698
复制相似问题