sqldf 和 R 代码中的奇怪 sql 语句
Weird sql statement in sqldf and R code
我必须维护一些 R 代码,而编写它的人已经不在了。
我在他的代码中发现了一些奇怪的 sql 语句,我不确定它们是什么意思。这是其中之一:
sqldf(paste("select ", i," i , * from simTypeFile union all select * from simTypeFiles", sep=""))
i 是从零递增到 x 的索引。我希望 select 关键字后跟 column_name 或星号。在本例中,它后面跟着一个整数 i、一个 space、一个字符串 i 和一个星号。
要查询的table没有数字i或字符串"i"的列。 select 语句后面的那些字符是什么意思?
我认为他们正在为模拟准备数据,并添加 i
列用于索引并将其命名为 i
(明确使用 AS命名列,例如:select 1 AS i
),请考虑以下示例:
# emprty data.frame to fill in
simTypeFiles <- data.frame(i = numeric(0), speed = numeric(0), dist = numeric(0))
# dummy data
simTypeFile <- cars[1:3,]
# then loop and rbind - union
for(i in 1:3){
simTypeFiles <-
rbind(
simTypeFiles,
sqldf(paste("select ", i," i , * from simTypeFile union all select * from simTypeFiles", sep = ""))
)
}
simTypeFiles
我必须维护一些 R 代码,而编写它的人已经不在了。
我在他的代码中发现了一些奇怪的 sql 语句,我不确定它们是什么意思。这是其中之一:
sqldf(paste("select ", i," i , * from simTypeFile union all select * from simTypeFiles", sep=""))
i 是从零递增到 x 的索引。我希望 select 关键字后跟 column_name 或星号。在本例中,它后面跟着一个整数 i、一个 space、一个字符串 i 和一个星号。
要查询的table没有数字i或字符串"i"的列。 select 语句后面的那些字符是什么意思?
我认为他们正在为模拟准备数据,并添加 i
列用于索引并将其命名为 i
(明确使用 AS命名列,例如:select 1 AS i
),请考虑以下示例:
# emprty data.frame to fill in
simTypeFiles <- data.frame(i = numeric(0), speed = numeric(0), dist = numeric(0))
# dummy data
simTypeFile <- cars[1:3,]
# then loop and rbind - union
for(i in 1:3){
simTypeFiles <-
rbind(
simTypeFiles,
sqldf(paste("select ", i," i , * from simTypeFile union all select * from simTypeFiles", sep = ""))
)
}
simTypeFiles