SAS中文论坛

标题: 数据自动读取 [打印本页]

作者: shiyiming    时间: 2007-3-19 20:11
标题: 数据自动读取
手中有一个文本格式的文档(数据共3个变量,有几千行),由空行分成200个小块,每块为一个数据,也就是说有200个数据,如何将其自动读入sas,并形成200个数据集,以利于分析?请各位指点

数据如下
-0.115949        -0.060406        0.0578
-0.083292        0.031747        0.081424
-0.028036        0.104782        0.092027
0.019166        0.165104        0.09589
0.026418        0.218288        0.07575
0.095565        0.226836        0.055463
0.167288        0.294219        0.009977
0.156674        0.361226        -0.029372
0.175791        0.353618        -0.066702
0.186745        0.35686        -0.103597
0.211003        0.369712        -0.135327
0.263384        0.391115        -0.176897

-0.271474        -0.236808        -0.411125
-0.355112        -0.119216        -0.434425
-0.347913        -0.053463        -0.421753
-0.391073        -0.103646        -0.227374
0.385506        0.210833        -0.251575
0.470417        0.229124        -0.263825

-0.374302        -0.362125        -0.400335
-0.327562        -0.356789        -0.445498
-0.310586        -0.477019        -0.367101
-0.433672        -0.369871        -0.325267
-0.35244        -0.286346        -0.303667
...........
作者: shiyiming    时间: 2007-3-20 10:01
标题: SOME CLUES
DATA TEST;
INFILE "C:\TEST.TXT" MISSOVER;
INPUT V1 - V3;
RUN;

THEN...
作者: shiyiming    时间: 2007-3-20 13:28
标题: 数据分块
导入后,我是采用IML模块,设计一个循坏,将数据分成200个小数据集的,不知道还有没有别的好方法?请大家指点

代码如下

proc iml;
use a;
read all into x;
y=1;
nr=nrow(x);
do i=1 to nr;
if x[i,1]=. then y=y||(i-1);
end;
print y;

ny=ncol(y);
do i=2 to ny; /**到处第2到第199的小数据**/
j1=y[i-1]+2;
j2=y[i];
z=x[j1:j2,1:3];
print z;
end;

quit;




欢迎光临 SAS中文论坛 (https://mysas.net/forum/) Powered by Discuz! X3.2