楼主: shevaze
1035 2

SAS如何取值问题 [推广有奖]

  • 2关注
  • 10粉丝

已卖:87份资源

副教授

75%

还不是VIP/贵宾

-

威望
0
论坛币
2962 个
通用积分
44.3410
学术水平
9 点
热心指数
5 点
信用等级
3 点
经验
87190 点
帖子
718
精华
0
在线时间
1095 小时
注册时间
2010-11-13
最后登录
2024-5-15

楼主
shevaze 发表于 2013-4-12 22:29:36 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
如图,第九个变量值是10,符合条件,我怎么一块儿将第八个变量,和第十个变量一块取出来呢?
因为都是需要的,
不胜感激!!
二维码

扫码加我 拉你入群

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

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

关键词:不胜感激 变量值 如何 不胜感激

未命名.jpg (8.11 KB)

未命名.jpg

沙发
rdwalk 发表于 2013-4-12 23:25:51
data aa;
  input a;
  cards;
1
2
2
7
1
23
2
1
10
23
12
11
;
run;

1111111111111111111111111111111111111
data bb;
  set aa;
  a1=lag2(a);
  a2=lag(a);
  a3=a;
  if a2=10 then output;
  drop a;
run;
proc print;run;


2222222222222222222222222222222222222
proc transpose data=aa out=cc;
run;
data dd;
  set cc;
  array ar[12] col1-col12;
  do i=1 to 12;
    if ar(i)=10 then do;
   x1=ar(i-1);
   x2=ar(i);
   x3=ar(i+1);
end;
  end;
  keep x1-x3;
run;
proc print;run;

两种方法,扩展性不强

藤椅
qinly10 发表于 2013-4-29 18:07:03
你的意思是把观测值为10以及他的前后各一个观测都保留下来?试试这个程序:
data aa;
  input a @@;
  cards;
10 2 3 4 5 6 7 8 90 10 10 12 10
;
run;
data bb;
set aa;
if a=10 then do;
na=_n_-1;output;
na=_n_ ;output;
na=_n_ +1;output;
end;
run;
proc sql;
create table b1 as select distinct na from bb;
quit;
data want(keep=a);
set b1;
do i=na;
set aa point=i;
if _error_=0 then output;
end;
run;
proc print;run;

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-1 15:10