R-数据$列在用户定义的函数中返回null



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

我写了一个函数

     getvariance <-function(data, column)

返回 column中 CC_1中值的差异

在我写的功能中

    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]当列的函数参数时不起作用?

预先感谢。

您正在尝试访问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

相关内容

  • 没有找到相关文章

最新更新