【问题标题】:Extracting some columns in R提取R中的一些列
【发布时间】:2012-10-14 17:04:49
【问题描述】:

我有以下示例数据框:

x<-c(1:4)
y<-c(9:12)
z<-c("a","b","c","d")
data<-data.frame(x,y,z) # as data: 

      x  y z
    1 1  9 a
    2 2 10 b
    3 3 11 c
    4 4 12 d

我想使用函数提取第 2 列或第 3 列(注意:我使用列名来提取)。我的代码如下:

data_frame<-function(col){
cols<-c("y","z")
# column x is already there; it is not in a vector of col.
if (col %in% cols){
kk<-data[,c("x","col")] 
return (kk)}
}

现在,我想要data_frame("y") 的输出。但是,R 给了我以下错误:

data_frame("y")
Error in `[.data.frame`(data, , c("x", "col")) : 
  undefined columns selected. 

我想知道为什么 R 不接受我的论点 col,这里是 y。我有点不高兴为什么 R 将参数 col 解释为列的名称。您在这方面的宝贵建议将不胜感激。

【问题讨论】:

    标签: r dataframe extract


    【解决方案1】:

    这部分:kk&lt;-data[,c("x","col")]应该是kk&lt;-data[,c("x",col)]

    【讨论】:

    • 很高兴它成功了。您介意将其作为最佳答案进行检查吗?谢谢。
    • 当然!你能告诉我我该怎么做吗?
    • 复选标记就在我答案左侧的“2”下方。
    猜你喜欢
    • 1970-01-01
    • 2022-01-13
    • 2016-12-26
    • 2017-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-30
    • 1970-01-01
    相关资源
    最近更新 更多