删除矩阵中的列值

时间:2012-05-15 05:39:40

标签: r

我已经和它在这一段时间了。我希望你们中的一个可以帮助我。我有一个大矩阵:122行和6005列。一列[,1]列出了项目代码。在这一栏中有25个我想要摆脱的练习试验。我尝试使用此代码:

  x1=nw[,1][-c(1:25), 1:6005]

但它会产生不正确的尺寸误差。如果我将此列隔离,我会得到我想要的结果。为什么这不会推广到整个矩阵?任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:1)

Deos这解决了你的问题,

m <- matrix(1:732610, 122 , 6005)
z <- m[-c(1:25),-1]

答案 1 :(得分:0)

您不能只从矩阵中删除值,因为它具有设定的维度(行数x列数)。相反,请尝试使用缺失值(NA)替换值。

nw <- matrix(rnorm(122*6005, 5, 1), nrow = 122, ncol = 6005)
nw[,1][1:25] <- NA
nw[,1:4]

然后你可以用na.omit / na.rm函数来处理NA。例如

mean(nw[,1], na.rm = T)