如何从R中的表中选择多个列?

时间:2014-04-07 07:25:29

标签: r

让我们假设我将数据存储在一个简单的列表中。让我们调用这个列表A.我想写一个函数,我从列表中选择第2,第5和第10个项目,并创建一个带有该输出的新矩阵。例如,A<-(c(2,5,10))表示我需要选择第2,第5和第10列来创建新矩阵。假设我想调用函数choosecol,其中choosecol(data,A)返回输出矩阵,其值对应于第2,第5和第10位置。我(或者我应该)如何写一个使这成为可能的函数?

1 个答案:

答案 0 :(得分:0)

没有必要为此编写功能。 data[, A]应该这样做:

m <- matrix(1:20, ncol = 10)
m
#      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
# [1,]    1    3    5    7    9   11   13   15   17    19
# [2,]    2    4    6    8   10   12   14   16   18    20

A <- c(2, 5, 10)

m[, A]
#      [,1] [,2] [,3]
# [1,]    3    9   19
# [2,]    4   10   20