簡體   English   中英

用戶定義函數中的data $ column返回null

[英]data$column returning null in a user-defined function

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

我寫了一個函數

     getvariance <-function(data, column)

返回data column中值的方差

在我寫的函數中

    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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM