【问题标题】:data$column returning null in a user-defined functiondata$column 在用户定义的函数中返回 null
【发布时间】:2014-03-11 10:44:47
【问题描述】:

我是 R 新手(和 stackoverflow 也是),所以请原谅任何可能的愚蠢!

我写了一个函数

     getvariance <-function(data, column)

返回column中值的方差data

在我写的函数中

    mydata = read.csv(data)
    for i=1:datasize {
      x=(mydata$column)[i]
      //compute variance of x
    }

当我打电话时

     getvariance("randomnumbers.csv", X1)

x 作为一列空值返回。

但是,当我简单地写

     x=(mydata$X1[i])

它用数值打印整列。

谁能帮我理解为什么当列是函数的参数时mydata$column[i] 不起作用?

提前致谢。

【问题讨论】:

    标签: r datacolumn


    【解决方案1】:

    您正在尝试访问data$column 而不是data$X1

    data <- data.frame(X1=1:3)
    data$X1
    ## [1] 1 2 3
    data$column
    ## NULL
    

    而是尝试实际访问名为 X1 的列,如下所示:

    fct <- function(data, column){
      data[,column]
    }
    fct(data, "X1")
    ## [1] 1 2 3
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-28
      相关资源
      最近更新 更多