永发信息网

SAS要把一列的数据平分成两半,输出成txt,代码怎么写?

答案:3  悬赏:10  手机版
解决时间 2021-11-15 19:38
  • 提问者网友:欲望失宠
  • 2021-11-15 09:09
SAS要把一列的数据平分成两半,输出成txt,代码怎么写?
最佳答案
  • 五星知识达人网友:枭雄戏美人
  • 2021-11-15 10:30
***50000条案例;
Data Case;
Do X=1 To 50000;
Output;
End;
Run;

***方法一、50000条中,前25000为A
后25000为B;
Data A B;
Set Case Nobs=Obs;
If _N_< (Obs/2) Then Output A;
Else Output B;

***方法二、50000条中,随机分配大约一半为c
另一半为D;
Data C D;
Set Case;
R=Ranuni(0);
If R <.5 Then Output C;
Else Output D;
Drop R;
Run;

***方法三、50000条中,随机分配一半(25000)为F
另一半(25000)为G;
Proc Surveyselect Data=Case Out=E Outall Method=Srs Samprate=.5
Noprint;
Run;
Quit;

Data F G;
Set E;
If Selected=0 Then Output F;
Else Output G;
Run;
全部回答
  • 1楼网友:从此江山别
  • 2021-11-15 12:06
最好具体点追问就比如说我有一列数据可能有5W多的,就一列,文本的,我已经导入了,名字叫work.dg 我想把里面的数据平分成两份work.dg1和work.dg2,里面每个有2W多的数据就这样。。追答我可以提供具体的分析其他数据处理

具体这里也就不清楚
  • 2楼网友:从此江山别
  • 2021-11-15 11:31
for exemple, assumes you have 100 observations,then you can run the follow procedures

data dg1;
set dg;
if _n_ le 50;
run;

data dg2;
set dg;
if _n_ gt 50;
run;
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯