全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
69650 134
2011-09-25
相关连接 https://bbs.pinggu.org/thread-475221-1-1.html
在此讨论中也产生了一些新的问题,放在12楼,产生一个新的解决或者说理想的解决方案在讨论中,敬请你的关注:https://bbs.pinggu.org/thread-1188695-1-1.html
第一个问题,这是我爱萌一个人遇到的吗?
不是,有人遇到的3T,和15TB的数据,1TB=1024GB,如:回贴的人中有,[haikuoxinkong]、[smthny]
还有我现在还是坚持这个观点不是我们一两个遇到,的确有人在做。

详细:
[smthny]    单个文件行数没超过2^63-1(大概9.2 quintillion)的话,用linux企业版加linux版本的SAS
我现在做的数据15T,单个SAS文件最大的1T 因为数据源是UNIX下处理好的SAS文件,所以没有办法用别的东西
如果哪位朋友知道怎么可以工作得快点,麻烦告诉一下,谢谢

[haikuoxinkong]    解决了可以告诉我一下 前两天美国华盛顿大学的教授处理的数据有3个T sas根本不运行 谁有高招啊 那么多数据不能白瞎了啊

二维码

扫码加我 拉你入群

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

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

全部回复
2011-9-25 16:05:36
第二问题,该用matlab、R 处理如何?
[denver]对某位考虑用matlab、R替代SAS处理海量数据的兄弟的回复        兄弟你正好说反了,MatLAB的强大在于它有很多的工具箱,在每个工具箱中有很多现成的函数,在遇到具体问题的时候,能够最大程度的减少编程的工作。但其运行速度实在不敢恭维。
R的强大在于package的更新速度很快,很多新的统计算法都能在第一时间得到实现,而且语法规范友好,但与其他软件一样,缺点是处理海量数据不太灵便,因为还是要将数据整体读入内存的,一个解决办法是使用RSQL。
SAS的强大之处正在于对于海量数据的处理上,虽然语法恶心点,所以我用SAS只是为了处理数据而已。

[爱萌]对[denver]的补充        matlab是科学计算软件,不是处理数据的也不是处理统计分析的,在国际会议上SAS的结果是不需要多解释的,而matlab需要,
matlab工具箱很多是懒人的工具不是统计学家或者数据分析专家喜欢的,因为它很难改变一些流程和算法,比如神经网络,我知道他有,但我就是自己要写代码,自己可以随时修改代码以符合我的思想,我可以把原来的随机抽样改为分层随机抽样以适合我的数据.当然这个R也有这种弊端.

同时R作为免费的统计软件,很多方法没有经过时间的考验和理论的证明就要用,这对数据分析人员是非常可怕的事情.因为你根本不知道这个方法会产生什么问题.如果做金融就意味着可以赢利也可以赔完,这就是模型风险. 而且R的帮助文件没有相关公式或者统计思想,这对学习者是很霸道的.要么必须接受他的算法和思想,相信他是对的,要么你不用它.

SAS,R,matlab都可以处理大量数据,相对来说SAS快一些, 同时SAS具有很多优秀的功能. 语法比较合理,R的语言是仿照SAS的语言.SAS基于C和C++写的,也可以直接利用,而R利用JAVA相对来说速度慢一些.MATLAB我不知道用什么语言写的,估计应该是C。

[kuhasu]对爱萌的补充        R可是好东西,不像他兄弟S+。Matlab最早是Fortran写的,那是那个年代的产物,后来C出来了,压倒性的优势,matlab也改用c写了。就数据处理来说,很多情况Fortran的速度比C要快

[wangdering1768]        一个做统计的哥们讲 matlab跟SAS比起来比较像刚学走路的小baby和成人做比较.
二维码

扫码加我 拉你入群

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

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

2011-9-25 16:07:14
第三个问题  遇到这种问题,我们该怎么做?
分解为两个步骤了解SAS和相关方法
二维码

扫码加我 拉你入群

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

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

2011-9-25 16:09:03
SAS里面已经有什么?相关的知识
[JETTKAOS]        SAS的DATA步基本就是按记录处理的,所以理论上多大的数据都能处理。    但是这还需要看具体的算法,某些算法需要整体处理或存储临时数据的话,还是得修改算法。最大记录数量为2**32-1

[whitefire2001]         随机数据,内存的访问速度比硬盘快1000倍以上;批量数据,内存快10倍以上。而1000万个变量能有多大? 双精度才64bit,8byte。 1000万 x  8 = 80 x 1000,000 = 80 M

[tekuaile]对[jettkaos]的回复        SAS的DATA步基本就是按记录处理的,所以理论上SAS就是边读入边处理数据。 但是这还需要看具体的算法,某些算法需要整体处理或存储临时数据的话,那就是只能先都读入再整体处理。

[chitchatla]        SAS在内存中做一些事情,MEMSIZE是你的内存应用的最高限度。

[soporaeternus] 首先是一个现实:十万数量级变量和亿数量级记录的数据规模对于一些行业是很正常的,并且随着时间的积累呈迅速增长。T级别的数据处理已经在国内一些以SAS为核心的BI系统或是分析项目中实施,并有很多经验。
1 SAS是一个统计分析工具软件,SAS管理数据只是一个搬运工,效率有限。大规模的数据预处理、存储、管理、调度,我认为交给数据库来做比较好。数据库+SAS的架构现在也很主流。各尽所能,各取其长而已。 在此前提下,某些意义上的所谓“读入即处理”可以通过数据库“定时定量”吐数据给SAS来实现。总之减少SAS对于数据的I/O操作,仅用其固化的“分析”功能,是一个不错的实现方式和方法。
2 SAS的商用价值在PROC步而非DATA步,编写DATA步时总会有这样的遗憾和无奈。DATA步的本质是逐条处理,理论上可以处理任何规模的数据,实现任何算法。个人感觉DATA步的弱项在于对非当前记录数据信息的记录与操作,这个在一些算法上很无力。所以说SAS只是一个工具,但它不是唯一的工具。
二维码

扫码加我 拉你入群

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

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

2011-9-25 16:12:19
解决办法
1、统计抽样, 的确有人在用这种方法
2、分而处理,把还量数据分割成小的进行处理(包括分层,分类)
3、借助其他软件,如perl等先初步处理,后用SAS
4、在数据库中进行处理,而后用SAS
5、SAS中hash进行相关处理
6、以上方法的多种结合
二维码

扫码加我 拉你入群

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

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

2011-9-25 16:13:16
支持统计抽样的有
我,爱萌
[420948492]        通过看上面的贴好像自我感觉有误区,其实没有必要处理全部的数据,只要能得到近似正确的结果,还收要考虑效率的
统计学给我我们很多思路
一,选取案例,可以采取抽样的方式,实践证明若在原总体数据存在错误(可以是记录错的)的情况下,抽样的效果是要好于总体的。
二,上面说到有1000个变量,统计学,机器学习给我们提供了选择重要变量的方法,足以让我们解决此类问题。
三,没这个必要,今天你能处理GB级的,TB级的呢,数据挖掘给我们很好的借鉴,数据是以难以想象的速度增长的,计算能力虽然也在升级,但而这种升级来自于数据的压力,所以可以预测的说,计算能力感不上数据,何苦呢

呵呵,你呀,自认为统计的抽样是对的,
抽样的前提是大家独立,具有代表性,
而实际不是这样的,有很多知识需要从大量的数据挖掘,
如GENE microarry数据,基因的个数有5W,而样本只有10多个,你不要告诉我你抽去GENE研究
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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