[问题] 电脑跑不动问题...

楼主: sinclairJ (KEEP MOVING FORWARD)   2015-04-24 17:17:35
不好意思...有关电脑与软件的问题想请教
我通常都用个人PC跑R程式(研究室也没其他资源)
但因为最近要分析的资料量实在太大(原始资料约为500,000*200)
跑R也常跑到没有回应 现在有两个问题想请教
1.碍于某些套件是以"栏"为单位来进行分析(如两栏间的相关系数检定)
以我的资料档为例 我感兴趣的变量就是那500,000列
所以我必须先在R里面转置再输出成csv档 之后才能做后续分析
今天有试着输出...但Excel却开不起来
(错误讯息:只能容许1X,XXX行) 这是遇到的第一个问题
2.之后试着不如不要转出 直接转置完在R里面跑分析就好
结果却没有回应...有试着把同学的内存加到自己电脑(变成16G)
但R却迟迟还是没有回应...
自己有天真的想了一下解决方法 可能打程式的时候
以逐行的方式作检定 若显著的话 就先暂存在某个物件里
但碍于程式能力不好 怕会花太多时间
不然资料那么大 若是还以之前的程式习惯(一次处理整个资料档)来做分析
肯定是不行的吧... 所以想请问各位先进...
有"以不更换软硬件"的情况下的解决方法吗
作者: andrew43 (讨厌有好心推文后删文者)   2015-04-24 17:24:00
1. libreoffice / openoffice 试试看2. 最佳化的程式码要有实际案例才说得下去另外,你的资料到底是200列还是200栏?
楼主: sinclairJ (KEEP MOVING FORWARD)   2015-04-24 17:45:00
不好意思,原始资料是200行没错200栏我晚点试试看你提的excel解决办法,谢谢
作者: Wush978 (拒看低质媒体)   2015-04-24 18:29:00
先试试能不能抽样跑
作者: celestialgod (天)   2015-04-24 20:31:00
用notepad++或是sublime text之类的开csv档sublime text有套件支援csv浏览很方便500,000列看你是怎么写,670000x150在16G还可以做要不就要考虑用disk当作内存缓冲我没注意到你是要用excel分析,抱歉
楼主: sinclairJ (KEEP MOVING FORWARD)   2015-04-24 22:21:00
哈哈怎么会抱歉,我要说感谢都来不及了,目前程式码没问题,电脑还在试,哈
作者: Edster (Edster)   2015-04-25 05:32:00
这要看你code怎么写. 不然你用乱数给我们做范例也好.至少我看起来不是硬件的问题.
作者: celestialgod (天)   2015-04-25 18:56:00
我不是说程式码有问题,而是写法,有些不必要的复制会造成内存的浪费,才会让你内存不够用,最简单的例子,names的assign复制几次,转置个几次次,增加column复制几次,可能你内存就在这途中浪费掉,又没有remove object下...我觉得R应该不会主动做内存内存管理补充一点,所以如果需要帮忙,可以把程式PO上来资料可以用乱数,只是要确认里面没用名称CALL

Links booklink

Contact Us: admin [ a t ] ucptt.com