Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
选择时,sqldf值大于所有值的中值_Sql_R - Fatal编程技术网

选择时,sqldf值大于所有值的中值

选择时,sqldf值大于所有值的中值,sql,r,Sql,R,我正在尝试使用sqldf查找收益率大于所有股票中值的所有股票记录,但我得到了这个消息 我已经尝试使用实际的数字2.39,它可以工作,但我没有成功地替换一个变量,使其动态。也许一个副选择会更好 mYd <- median(df3$Yield, na.rm = TRUE) df4 <- sqldf("SELECT a.* FROM df3 a WHERE (a.Yield > mYd) ;") mY

我正在尝试使用
sqldf
查找收益率大于所有股票中值的所有股票记录,但我得到了这个消息

我已经尝试使用实际的数字2.39,它可以工作,但我没有成功地替换一个变量,使其动态。也许一个副选择会更好

mYd <- median(df3$Yield, na.rm = TRUE)
df4 <- sqldf("SELECT a.* 
             FROM df3 a 
             WHERE (a.Yield > mYd)
             ;")

mYd错误源于SQLdf无法在
df3
中找到名为
mYd
的列。它需要在数据框中为查询中引用的每个对应列查找列。尝试将
mYd
变量作为列添加到
df3
数据框中:

df3$mYd <- median(df3$Yield, na.rm=TRUE)
df4 <- sqldf("SELECT * FROM df3 WHERE Yield > mYd;")

df3$mYd在sqldf前面加上fn$,然后您可以通过在要插入的变量前面加上$符号来使用字符串插值
fn$sqldf(“从df3中选择一个*,其中(a.Yield>$mYd)”)
请注意,不需要分号。