sql – 如何处理r语言中的50GB大型csv文件?
发布时间:2020-05-29 19:49:58 所属栏目:MsSql 来源:互联网
导读:我在这里的“大数据流程”中比较新,希望能找到一些关于如何处理50 GB csv文件的建议.目前的问题如下: 表看起来像: ID,Address,City,States,... (50 more fields of characteristics of a house)1,1,1st street,Chicago,IL,...# the first 1 is caused by wr
|
我在这里的“大数据流程”中比较新,希望能找到一些关于如何处理50 GB csv文件的建议.目前的问题如下: 表看起来像: ID,Address,City,States,... (50 more fields of characteristics of a house) 1,1,1st street,Chicago,IL,... # the first 1 is caused by write.csv,they created an index raw in the file 我想找到属于加利福尼亚州旧金山的所有行.它应该是一个简单的问题,但csv太大了. 我知道我有两种方法在R中执行它,另一种方法是使用数据库来处理它: (1)使用R的ffdf包: 自上次保存文件以来,它使用的是write.csv,它包含所有不同的类型. all <- read.csv.ffdf( file="<path of large file>",sep = ",",header=TRUE,VERBOSE=TRUE,first.rows=10000,next.rows=50000,) 控制台给了我这个: Error in ff(initdata = initdata,length = length,levels = levels,ordered = ordered,: vmode 'character' not implemented 通过在线搜索,我找到了几个不适合我的案例的答案,我无法理解如何将“字符”转换为他们提到的“因素”类型. 然后我尝试使用read.table.ffdf,这更是灾难.我找不到那个坚实的指南. (2)使用R的readline: 我知道这是另一种好方法,但找不到有效的方法来做到这一点. (3)使用SQL: 我不知道如何将文件传输到SQL版本,以及如何处理这个,如果有一个很好的指南我想尝试.但总的来说,我想坚持使用R. 感谢您的回复和帮助! 解决方法您可以使用sqtf包在窗帘后面使用R和SQLite.您将使用sqldf包中的read.csv.sql函数,然后您可以查询数据,但是您希望获得较小的数据框.来自文档的示例: library(sqldf)
iris2 <- read.csv.sql("iris.csv",sql = "select * from file where Species = 'setosa' ")
我已经在非常大的CSV文件上使用了这个库,效果很好. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 在SQL Server 2014中写入基础表后立即查询视图
- 如何解决VisualSVN Server 安装提示错误 Repositories is n
- 数据库 – (1242,’子查询返回超过1行’)Django中的错误?
- sql server中随机函数NewID()和Rand()
- loopbackjs – 将内置模型迁移到数据库
- sqlserver清空service broker中的队列的语句分享
- 计算SQL中的连续缺失
- mysql 误删除ibdata1之后的恢复方法
- sql – 为什么我得到“游标的名称已经存在”?
- sql-server – sp_help中的FixedLenNullInSource是什么意思
