微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从sqldf查询中调用R函数

有没有办法从sqldf查询调用R函数?例如.
sqldf("select paste('Hello','World')")

或者,有没有办法在sqldf后面的sqlite引擎中定义自定义函数或存储过程? (我使用sqldf和普通的内存中的R数据帧;我没有连接到任何实际的数据库.)

1)现有功能首先确保您所需的功能尚不可用.例如,sql中直接支持问题中的代码
> sqldf("select 'Hello' || ' ' || 'world' ")
  'Hello' || ' ' || 'world'
1               Hello world

2)Rsqlite.extfuns一个包含sqlite版本的sql中的所有sql函数,以及Rsqlite.extfuns包中的大量用户定义函数(由sqldf自动加载).

3)其他可加载扩展可以通过sqlite sql函数load_extension()加载任何现有sqlite可加载扩展中的函数.例如见these extensions

4)自定义函数自定义函数可以添加sqlite,但必须写入in C.

5)Postgresql& sqldf sqldf不仅支持sqlite,还支持h2,postgresqlMysqL. postgresql在这方面特别强大.见this link from the postgresql documentation另见Pl/RR Embedded Postgres package.

6)H2& sqldf sqldf支持H2数据库.就像sqlite H2一样,它包含在RH2驱动程序R包中,因此您不必安装单独的数据库;但是,您必须安装Java.它有一个内置的SHA256哈希函数(称为哈希).

7)混合sqldf& R sql和R可以像这样混合:

library(digest)
transform(sqldf("select * from BOD"),digest = sapply(demand,digest))

8)其他见SO question and answers

更新:添加了有关H2的信息.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


SQLite架构简单,又有Json计算能力,有时会承担Json文件/RESTful的计算功能,但SQLite不能直接解析Json文件/RESTful,需要用Java代码硬写,或借助第三方类库,最后再拼成insert语句插入数据表,代码非常繁琐,这里就不展示了。参考前面的代码可知,入库的过程比较麻烦,不能只用SQL,还要借助Java或命令行。SPL是现代的数据计算语言,属于简化的面向对象的语言风格,有对象的概念,可以用点号访问属性并进行多步骤计算,但没有继承重载这些内容,不算彻底的面向对象语言。...
使用Python操作内置数据库SQLite以及MySQL数据库。
破解微信数据库密码,用python导出微信聊天记录
(Unity)SQLite 是一个软件库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是在世界上最广泛部署的 SQL 数据库引擎。SQLite 源代码不受版权限制。本教程将告诉您如何使用 SQLite 编程,并让你迅速上手。.................................
安卓开发,利用SQLite实现登陆注册功能
相比大多数数据库而言,具有等优势,广泛应用于、等领域。
有时候,一个项目只有一个数据库,比如只有SQLite,或者MySQL数据库,那么我们只需要使用一个固定的数据库即可。但是一个项目如果写好了,有多个用户使用,但是多个用户使用不同的数据库,这个时候,我们就需要把软件设计成可以连接多个数据库的模式,用什么数据库,就配置什么数据库即可。4.Users实体类,这个实体类要和数据库一样的,形成一一对应的关系。11.Sqlite数据库,需要在代码里面创建数据库,建立表,再建立数据。8.我们开启MySQL数据库,然后进行调试,看程序的结果。2.安装SqlSugar。
基于Android的背单词软件,功能强大完整。
SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统。说白了就是使用起来轻便简单,