楼主: happylijun21
995 0

求助data步如何实现类似,另求问base和advan接下来看什么书 [推广有奖]

  • 1关注
  • 0粉丝

已卖:53份资源

本科生

93%

还不是VIP/贵宾

-

威望
0
论坛币
895 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
6119 点
帖子
81
精华
0
在线时间
144 小时
注册时间
2007-12-30
最后登录
2023-6-8

楼主
happylijun21 在职认证  发表于 2015-1-16 13:22:34 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
想通过data步实现以下功能
data test;
input a @;
do i=1 to 3;
input b @;
output;
end;
datalines;
1 2 3 4
5 6 7 8
run;
proc print data=test(drop=i);
run;

这样的话能够得到想要的结果,即:一个a 对应3个b
Obsab
112
213
314
456
557
658但是如果a不是在第一列,就不知道怎么实现了
唯一能想到的是:
data test;
input @7 a @;
do i=1 to 3;
input @(2*i-1) b @;
output;
end;
datalines;
1 2 3 4
5 6 7 8
run;
proc print data=test(drop=i);
run;

这样也能得到想要的结果,即1个a对应3个b
Obsab
141
242
343
485
586
687但是如果数据长度不一,或者a所在的位置不是最后一列,都不能得到想要的结果,求大神指点如何实现?

另外还有个问题想请教,现在base和advan的tutor都学完了,想进一步深入学习一下,不知道该从什么方面下手?

二维码

扫码加我 拉你入群

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

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

关键词:advan data步 Data 如何实现 Base data步 SAS学习

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-25 20:05