以下是脚本

> library(sqldf)
> turnover = read.csv("turnover.csv")
> names(turnover)
[1] "Report.Date"       "PersID"            "Status"            "DOB"
[5] "Age"               "Tenure"            "Current.Hire.Date" "Term.Date"
[9] "Gender"            "Function"          "Grade"             "Job.Category"
[13] "City"              "State"             "Retiree"           "Race"
> turnover_hiredate = sqldf("select Status, Current.Hire.Date from turnover")

我收到一个错误消息:没有这样的列:Current.Hire.Date。但是此变量被列为第7个变量。

我做错了什么?

最佳答案

sqldf(...)在列名中不喜欢.(句点),因此您需要将其更改为其他名称。试试这个:

library(sqldf)
turnover = read.csv("turnover.csv")
colnames(turnover) <- gsub("\\.","_",colnames(turnover))
turnover_hiredate = sqldf("select Status, Current_Hire_Date from turnover")

原因是该句点在SQL中用于表示表格列,例如turnover.Status

关于r - 错误: No Such Column using SQLDF,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23451139/

10-11 08:21