全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
2013 5
2020-05-21
各位大神好,最近用R遇到了一些问题,在此请教大家:1、R函数里面的memory.limit()最大能设置到多少?其单位是什么?我看网上说的,一般是64位的电脑的话,能设置到100G,也就是memory.limit(100000)。但是我R里面显示:
> memory.limit()
[1] 1.759219e+13


为什么数值这么大?其单位是什么呢?但是问题在于数值这么大,但还是有很多数据(大概几G的csv)还是读不进来,写不出去。所以请教一下这是为什么呢?

2、如果样本量有几十亿行,跑一个probit回归,R可以跑出来吗?.....如果不行的话,那用什么软件才可以跑出这样样本量的回归呢?

在此先谢谢大家!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2020-5-21 14:03:10
单位是b,100G大概是1.0e+11b,所以R的内存设定是够的,按道理你的数据是可以读进去的。但这只是存储的限制,实际上还有运算能力的限制,比如某些回归分析,运算量可能是以变量数为指数的级别,而指数型量级有多夸张你只要想想棋盘放米的故事就明白了。所以要顺利运算,一是考虑降维,二是优化程序,三是选择合适的实现代码,比如R运算速度慢,就要考虑用c++或者julia之类的语言。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2020-5-22 22:29:14
llb_321 发表于 2020-5-21 14:03
单位是b,100G大概是1.0e+11b,所以R的内存设定是够的,按道理你的数据是可以读进去的。但这只是存储的限制 ...
感谢您的回复!如果单位是b的话,为什么我的电脑里面memory.limit()会有10^13那么多呢?那不就应该等于10000GB了吗?我看网上说64位的电脑R里面的memory.limit()最多能设置到100GB的内存~
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2020-5-23 00:24:38
其实我也不晓得为啥子搞辣么大。你用的是服务器吗
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2020-5-24 18:25:52
llb_321 发表于 2020-5-23 00:24
其实我也不晓得为啥子搞辣么大。你用的是服务器吗
不是呀,就是普通的笔记本电脑,内存也就8G,不懂得这个10^13的单位是什么
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2020-5-25 00:37:57
可以看下帮助文档哦。memory.limit的单位是Mb,和电脑及R是32/64位有关
1.jpg
2.jpg

另外R一直是用内存存储变量的。既然你的电脑内存只有8G,受电脑限制,1G大小以上的数据都很难导入的。可以考虑按行分批读入
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群