我是R的初学者,我一直在处理一个数据集.如果有人能帮忙就太好了.谢谢


names(specdata)
# [1] "Date"    "sulfate" "nitrate" "ID"     
head(specdata)
        Date sulfate nitrate ID
1 2003-01-01      NA      NA  1
2 2003-01-02      NA      NA  1
3 2003-01-03      NA      NA  1
4 2003-01-04      NA      NA  1
5 2003-01-05      NA      NA  1
6 2003-01-06      NA      NA  1
# function to find the mean of a subset
pollutantmean <- function(directory,pollutant,id =1:332){
    x<- directory[directory$id== id,]
    mean(x, na.rm = TRUE)
}
pollutantmean("specdata", "sulfate",1:10)
**Error in directory$id : $ operator is invalid for atomic vectors**
class(specdata)
# [1] "data.frame"
is.recursive(specdata)
# [1] TRUE

即使它是一个递归数据集,也会抛出这个错误:

目录$id错误:$ operator对原子向量无效。

如果你能帮忙就太好了。由于

你通过传递一个字符串(又名字符向量)而不是给它一个数据帧来调用你的函数。通过移除specdata周围的""来修复此问题。

相关内容

最新更新