如何在函数中使用“ sqldf”

时间:2018-09-30 15:57:39

标签: r sqldf

我正在尝试以下代码,但收到错误: 我尝试同时使用“ sprintf”,“ fn $ sqldf”来选择输出。 我的函数将与列“ a”一起运行两次,并与列“ e”一起运行两次。 请提出建议。我从某位成员那里得到了建议,然后编辑代码。enter code here

db2 = data.frame(a = c(1,2,3), 
                 b = c("b","a","c"), 
                 e=  c(4,6,3))

library(sqldf)
       extrct = function(id)
   {
       filedata1 <-  sprintf("select max(%s) as maxid from db2",id)
       filedata3 <- fn$sqldf("select max(id) as maxid from db2")

    }
    extrct(a)
    extrct(e)

错误:

Error in sprintf("select max(%s) as maxid from db2", id) : 
  object 'a' not found
Error in sprintf("select max(%s) as maxid from db2", id) : 
  object 'e' not found

1 个答案:

答案 0 :(得分:2)

1)在问题中没有完整示例的情况下,您可能想在income中找到与特定ID对应的行-下面我们在{{ 1}}的{​​{1}}等于3。

income

2)或使用基数R:

id