首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R中选择的未定义列

R中选择的未定义列
EN

Stack Overflow用户
提问于 2014-06-15 21:14:41
回答 1查看 19.3K关注 0票数 0

我得到的错误是“[.data.frame‘(current_dataset,complete.cases(current_dataset))中的错误:未定义的列被选中”。我试图找出问题,但无法解决。

我想要做的是:首先,它要经过几个文件,其中包含不同位置的硫酸盐和硝酸盐信息。这些文件都包含“csv”,因此myfile将用作一个向量,以方便地引用文件。然后,我想循环遍历332个文件,读取它,并检查是否有足够的完整情况(这个数字是函数中的一个参数)。如果是这样的话,我希望将所有完整的案例(硫酸盐和硝酸盐数据)添加到先前定义的数据框架中。最后,我想返回硫酸盐和硝酸盐之间的相关性。

代码语言:javascript
复制
corr <- function(directory, threshold = 0) {
    #store data frame that holds sulfate amount and nitrate amount that meet threshold and are complete cases
    data <- data.frame(sulfate = numeric(0), nitrate = numeric(0))

    #set working directory
    setwd(directory)

    #get file names
    myfiles <- list.files(pattern = "csv")

    #loop through files
    for(i in 1:332) {

        #read each file
        current_dataset <- read.csv(myfiles[i])

        #check if there are enough compelte cases to meet threshold
        if(sum(complete.cases(current_dataset)) > threshold) {

            #get complete cases
            complete_cases <- current_dataset[complete.cases(current_dataset)]

            #add sulfate and nitrate info to table
            data <- rbind(data, data.frame(sulfate = complete_cases$sulfate[i], nitrate = complete_cases$nitrate)[i])
        }
    }
    #get correlation
    cor(data)
}
EN

回答 1

Stack Overflow用户

发布于 2014-06-15 21:16:18

以下是错误:

代码语言:javascript
复制
complete_cases <- current_dataset[complete.cases(current_dataset)]

应:

代码语言:javascript
复制
complete_cases <- current_dataset[complete.cases(current_dataset), ]

[的单个参数作为一组要选择的列。包含逗号并省略列选择以选择行。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24234178

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档