R 错误:没有使用SQLDF的列
下面是脚本R 错误:没有使用SQLDF的列,r,sqldf,R,Sqldf,下面是脚本 > 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"
> 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")
库(sqldf)
营业额=读取.csv(“营业额.csv”)
colnames(营业额)不需要更改列名
以RSQLite 1.0.0和sqldf 0.4-9开始的列名中的点不是
不再翻译为下划线
我们只需要在单引号之间编写SQL语句,列名包括双引号或反勾号/反引号之间的点
两个例子:
require(sqldf)
# 1
turnover <- data.frame(Status = c("A", "B", "C"),
Current.Hire.Date = c("4/10/10", "13/11/10", "1/7/13"))
sqldf('select Status, "Current.Hire.Date" from turnover')
#2. Double quotes and backticks interchangeably
sqldf('select Species, avg("Sepal.Length") `Sepal.Length`,
avg("Sepal.Width") `Sepal.Width` from iris group by Species')
你也可以使用
library(sqldf)
turnover <- read.csv("turnover.csv", header=TRUE, check.names=FALSE) #Leave Names Alone
names(turnover) <- gsub(x = names(turnover),
pattern = " ",
replacement = "_") # Replace Var Name blank with _
库(sqldf)
人事变更率
library(sqldf)
turnover <- read.csv("turnover.csv", header=TRUE, check.names=FALSE) #Leave Names Alone
names(turnover) <- gsub(x = names(turnover),
pattern = " ",
replacement = "_") # Replace Var Name blank with _