R_Language 板


LINE

因为要打得太多了我想说还是再问一篇好了 我试过http://goo.gl/soE8XA这篇的方法 可是出现错误讯息如下 Loading required package: tcltk Error in .local(conn, name, value, ...) : RS_sqlite_import: data1.dat line 2 expected 2 columns of data but found 3 然後我google了这个错误 https://groups.google.com/forum/#!topic/sqldf/1VWgp9WJLr4 这篇有讲到14年11月已经修改这个问题了 所以我不知道这样是发生什麽事了 我还蛮想学会这招的 然後我还想问有关bigmemory跟ff跑起来的速度会比较慢吗 谢谢 ※ 引述《jklkj (诚实可靠小郎君)》之铭言: : 标题: [问题] 记忆体不足 : 时间: Wed Jun 1 15:53:04 2016 : : : [问题类型]: : 程式谘询(我想用R 做某件事情,但是我不知道要怎麽用R 写出来) : 效能谘询(我想让R 跑更快) : : [软体熟悉度]: : 入门(写过其他程式,只是对语法不熟悉) : : [问题叙述]: : 目前我要把大概几千万笔的资料(目前只跑到2000多万笔)放进R去, : 应该会有两三个dataframe,每个dataframe都有数千万笔 : 打算把R当作资料库,不管是join或是一些资料的整理 : 我把资料一直rbind下去,超过两千多万笔之後就会出现记忆体不足的问题 : 想请问这样的问题除了直接加记忆体以外(因为是公司的电脑) : 有别的方法吗? : [程式范例]: : 程式范例就是很简单的 : sale <- rbind(sale1, sale) : 错误讯息如下 : error: cannot allocate vector of size 256.0 mb : 我有找到一些解决的方法是加ram(其实我也很想加到32G)、用64bit(感觉我已经在用了) : 想请问一下有别的解决方法吗? : : [环境叙述]: : R version 3.3.0 (2016-05-03) -- "Supposedly Educational" : Copyright (C) 2016 The R Foundation for Statistical Computing : Platform: x86_64-w64-mingw32/x64 (64-bit) : : [关键字]: : : 记忆体 不足 : : -- :



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 211.23.167.43
: ※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1464767586.A.407.html : → celestialgod: 那麽大的资料量还是直接用资料库省事 06/01 16:18 : → cywhale: 记得看过用sqldf把档案当暂时资料库可以避掉记忆体不足 06/01 16:35 : → jklkj: http://bryannotes.blogspot.tw/2014/07/r-sqldf-vs-lappy. 06/01 17:13 : → jklkj: html 这个网站有看到作者用楼上说的sqldf,而且row数量也相 06/01 17:15 : → jklkj: 当多(应该够我用一阵子了),想问一下这SQLDF是要怎麽当暂时 06/01 17:16 : → jklkj: 资料库,感谢 06/01 17:16 : 推 cywhale: 我刚google一下 这篇 http://goo.gl/soE8XA 06/01 17:23 : → cywhale: 我自己没用过,我也是跟一楼C大说的,直接用资料库.. 06/01 17:24 : → cywhale: 如果资料都是同一种(如数值)或可以转换,也可以用 06/01 17:25 : → cywhale: bigmemory in R.. 06/01 17:26 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 211.23.167.43
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1465007754.A.E37.html
1F:推 cywhale: 你想看的几个解法https://goo.gl/Q3L6mY pdf p3开始都有 06/04 14:15
2F:→ cywhale: sqldf csv要靠 library(RH2) csvread in github Q10 06/04 14:18
3F:→ cywhale: https://goo.gl/b8wWBc 06/04 14:18
4F:→ cywhale: 基本上不管sqldf, bigmemory..都不快,如果新资料格式都 06/04 14:19
5F:→ cywhale: 相同,又有记忆体不够问题,何不利用系统指令在R外就合并 06/04 14:20
6F:→ jklkj: 不好意思我不太了解要怎麽用系统指令在R外合并,而且我好奇 06/04 14:47
7F:→ jklkj: 的是既然我没办法rbind这些资料说是记忆体不足无法写超过n 06/04 14:48
8F:→ jklkj: row的资料,那麽我在外面合并不是一样也读不进来吗? 06/04 14:49
9F:→ jklkj: 其实我之前是一次读全部几千万笔的资料,可是每次进来都只 06/04 14:49
10F:→ jklkj: 有900多万笔(两次笔数相同),所以我才以为是不是R在读单次 06/04 14:50
11F:→ jklkj: 的资料列时有限制,我才回分开来读 06/04 14:51
12F:推 cywhale: 看你目的,如果读进来只是为了合并,而不做其他运算,那 06/04 15:00
13F:→ cywhale: 不如在R外做如cat 1.csv 2.csv > new.csv (linux) 06/04 15:04
14F:→ cywhale: 如要把超过记忆体的资料读进来做其他运算,bigmemory这类 06/04 15:06
15F:→ cywhale: 放硬碟的方式有帮助,但bigmemory资料格式必须一致有限制 06/04 15:07
16F:→ cywhale: 如资料会sample or subset後再运算,那资料库筛完再进R 06/04 15:08
17F:→ cywhale: 如果读进来少资料,不是记忆体问题,有可能资料格式不整 06/04 15:11
18F:→ cywhale: 另外几百万笔,应该fread吃得下来,不妨试试看 06/04 15:14
19F:→ jklkj: 所以cat是linux的语法而fread是C++的语法,可是我刚好都没 06/04 15:26
20F:→ jklkj: 在使用,我在自己研究一下,非常感谢帮助,之後我应该也会 06/04 15:27
21F:→ jklkj: 开始接触相关的程式语言,感谢 06/04 15:28
22F:推 Wush978: 先检查一下你的资料在9百万多的列有没有 06/04 15:32
23F:推 Wush978: 格式错误 06/04 15:32
24F:→ cywhale: No 抱歉造成误会 是library(data.table)中的fread 06/04 15:32
25F:→ Wush978: 都测测看read.table与read.csv 06/04 15:33
26F:推 Wush978: 两者在资料出错时的反应不太一样 06/04 15:33
27F:→ Wush978: 大资料不要用rbind 尽量一次做完 06/04 15:34
28F:→ Wush978: rbind会花费额外的记忆体做资料的复制 06/04 15:35
29F:→ jklkj: 照理来说如果资料错误的话,不管是900万笔或者是之後rbind 06/04 16:14
30F:→ jklkj: 的2000万笔应该都会有相同的问题不是吗?我的意思是假设我 06/04 16:15
31F:→ jklkj: 一开始全捞只有出现9,251,310笔,那麽我之後by年做rbind不 06/04 16:16
32F:→ jklkj: 是也会在第9,251,310出现错误吗? 06/04 16:17
33F:→ jklkj: cywhale抱歉我没有写清楚,我目前是只有捞到2000多万笔,之 06/04 16:17
34F:→ jklkj: 後可能每年会以千万笔的资料量增加,所以我不确定fread吃不 06/04 16:18
35F:→ jklkj: 吃得下,还是感谢你,顺便请问一个问题,所以csv档在linux 06/04 16:19
36F:→ jklkj: 下没有row的限制吗?感谢 06/04 16:19
37F:→ Wush978: 没有 06/04 18:35
38F:→ jklkj: 回报一下进度,刚装了32G2的记忆体,顺利地跑完了2000多万 06/13 15:43
39F:→ jklkj: 笔,看来之前一次只能抓900多万应该是因为记忆体无误,只是 06/13 15:44
40F:→ jklkj: 不知道抓取的笔数跟记忆体的限制在哪,不然之後就算跑完也 06/13 15:45
41F:→ jklkj: 不敢确定跑完的是真的全部资料??? 06/13 15:45







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:WOW站内搜寻

TOP