r - R sqldf解析/ case when语句不支持的字符
问题描述
由于 sqldf 中不支持的字符,R 给我一个错误,例如,当我键入以下内容时:
sqldf("select *,
case symptom
when 'Bell's palsy' or 'Facial pain' or 'Facial paralysis' then 'neuropathy'
end as Adverse_event from data")
错误是由于"'"
贝尔的话。有什么工作可以绕过这个错误吗?并且还正确地捕获了数据中的这种情况。
解决方案
您应该能够在查询中将单引号撇号加倍,例如
sql <- "select *, case symptom
when 'Bell''s palsy' then 'neuropathy'
when 'Facial pain' then 'neuropathy'
when 'Facial paralysis' then 'neuropathy'
end as Adverse_event
from data"
result <- sqldf(sql)
但是,我会在WHERE IN (...)
这里使用:
sql <- "SELECT *, CASE WHEN symptom IN ('Bell''s palsy', 'Facial pain', 'Facial paralysis')
THEN 'neuropathy' END AS Adverse_event
FROM data"
sqldf(data)
推荐阅读
- php - 搜索 SQL 记录并返回使用 SQLSRV_SCROLL_NEXT 找到的行数
- python - tf.train.get_global_step() 的值与当前训练步骤之间的差异
- reactjs - 如何在故事书的装饰器中使用应用程序的 sass 变量(React)
- c++ - 关于 vs2017 中的 std::reduce 未知?
- javascript - highcharts:导出的图像中没有数据
- casting - Microchip XC32 没有“非法铸造”的警告
- javascript - 比较 JavaScript 中的三个数组
- javascript - 按其值选择一个按钮并单击它
- jquery - 根据 2 个选择值设置表单提交操作
- javascript - 带有部分折叠内容的手风琴