作者dofu1943 (那就念吧~~)
看板Statistics
标题[程式] SAS分割档案後汇出
时间Tue Jul 31 22:13:19 2018
[软体程式类别]:
SAS
[程式问题]:
资料处理
[软体熟悉度]:
新手
[问题叙述]:
我有一个SAS档案,内有200万余个观察值
档案内有1个变数叫VAR1
我想要将这个档案以1万个观察值切成一个档案
并且在汇出的CSV档中去除掉VAR1这个栏位名称
[程式范例]:
我查过资料可以用obs选取想要的资料数
所以可以用
data a01;
set a00 (firstobs=1 obs=10000);
run;
data a02;
set a00 (firstobs=10001 obs=10000);
run;
然後做个200多次就完成了.................
接着再用proc export
PROC EXPORT DATA= a01
OUTFILE='D:\file\a01.csv'
REPLACE;
SHEET="sheet1";
RUN;
也是汇个200多次就完成了
但还没完,我还要将每个csv档打开
去删除每个栏位名称才行
当然也是要开个200次才能完成
目前我做了10次
觉得不太妙~~
不知道有没有比较省力的方法
proc export那里应该可以用macro
但要怎麽在输出csv时不要输出栏位名称(VAR1)呢
感谢版友指导
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.228.61.161
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Statistics/M.1533046402.A.C42.html
1F:推 melodyheyhey: set 001(obs=...... drop=var1) 试看看~ 07/31 23:39
OBS=10000
这个只能撷取前10000笔
drop=var1
这个会把整个变数drop掉
2F:→ paladin499: SAS不能写回圈吗? 08/01 07:50
我是想写回圈
但
%macro
%do var=1 %to 2000000
这个之前没发现可以在後面加一个%by调间距
刚才有找到介绍
明天我试试看能不能和obs写在一起
感谢
※ 编辑: dofu1943 (36.228.61.161), 08/01/2018 22:26:29