s******d 发帖数: 303 | 1 I need to generate 4 datasets (A,B,C,D) from a huge dataset X.Because X is
huge and have over 2 billion records, I am looking for a faster way to do it
. Because there is some relationship between A B C D. 请教高手快速而简易的方
法.以下是我想使用的方法,但是看上去并不快,而且电脑内存corrupted.由于每一个if
都是对数据的重新scan, 所以这个方法从本质上来说可能并不能提高运算的效率.小女
子虚心请教了.
data lib.A lib.B lib.C lib.D;
set lib.X;
if 0.9> freq > 0.1 then output lib.A;
if 0.8> freq >0.2 then output lib.B;
if 0.7> freq > 0.3 then output lib.C;
if 0.6> freq | g********e 发帖数: 8 | 2 I am wondering why you split your data in this way.
For datas in D, they will be in A,B and C also. Same for datas in C, they
will be in A and B also, ...
it
if
【在 s******d 的大作中提到】![](/moin_static193/solenoid/img/up.png) : I need to generate 4 datasets (A,B,C,D) from a huge dataset X.Because X is : huge and have over 2 billion records, I am looking for a faster way to do it : . Because there is some relationship between A B C D. 请教高手快速而简易的方 : 法.以下是我想使用的方法,但是看上去并不快,而且电脑内存corrupted.由于每一个if : 都是对数据的重新scan, 所以这个方法从本质上来说可能并不能提高运算的效率.小女 : 子虚心请教了. : data lib.A lib.B lib.C lib.D; : set lib.X; : if 0.9> freq > 0.1 then output lib.A; : if 0.8> freq >0.2 then output lib.B;
| s*r 发帖数: 2757 | 3 要想快,load到oracle里面去
内存空间不够,分次读入,时间换空间
it
if
【在 s******d 的大作中提到】![](/moin_static193/solenoid/img/up.png) : I need to generate 4 datasets (A,B,C,D) from a huge dataset X.Because X is : huge and have over 2 billion records, I am looking for a faster way to do it : . Because there is some relationship between A B C D. 请教高手快速而简易的方 : 法.以下是我想使用的方法,但是看上去并不快,而且电脑内存corrupted.由于每一个if : 都是对数据的重新scan, 所以这个方法从本质上来说可能并不能提高运算的效率.小女 : 子虚心请教了. : data lib.A lib.B lib.C lib.D; : set lib.X; : if 0.9> freq > 0.1 then output lib.A; : if 0.8> freq >0.2 then output lib.B;
| s******d 发帖数: 303 | 4 The reason is I would like to calculate mean, SD and quantiles for each
dataset. I am not sure if "proc means" can do mean in a subset of a dataset. | r*******d 发帖数: 2413 | 5 给个group变量,然后用by?
dataset.
【在 s******d 的大作中提到】![](/moin_static193/solenoid/img/up.png) : The reason is I would like to calculate mean, SD and quantiles for each : dataset. I am not sure if "proc means" can do mean in a subset of a dataset.
| s******d 发帖数: 303 | 6 我不确定你的意思,楼上是不是说再创建一个变量,如果是这样的话我不确定是否合适
。原因是我的records特别多,每个record 只有5个变量,所以增加一个变量,会使我
的文件增加几十个G.
我们平时都处理非常巨大的数据,希望可以找到一个有效处理大数据的方法。
另外还有一个问题,在产生新数据的时候既可以用if, 也可以用where,看上去效果差不
多,不知道哪个处理速度更快。for example
dataset libname.A;
set libname.X;
where VarA > 1; "if VarA > 1"
run;
Thank you! | m*********n 发帖数: 413 | 7 2 billion records。。。
有点吓人
我也觉得没有必要用sas处理 | w***z 发帖数: 28 | 8 where 更快
when use where , it subset first(chose the data according the condition).
When use if, it get all the data and then apply the condition.. | s******d 发帖数: 303 | 9 请问有什么比较好的建议?用什么处理比较好呢?
【在 m*********n 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 2 billion records。。。 : 有点吓人 : 我也觉得没有必要用sas处理
|
|