由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Statistics版 - 编程菜鸟问一个sas编程问题
相关主题
请问sas中一个变量的内容被两个左斜杠(/)分成了三部分再请教一个PROC SQL JOIN的问题。。。。
[急求助] survival analysis (SAS)一个SAS问题(transpose?)
关于stepwise programmingA SAS question
怎样用R定位变量的位置怎样储存我想要的proc means 的结果?
怎样用R除掉DUPLICATED RECORDHow to change sas dataset column order
[合集] └ Re: 关于stepwise programmingmixed models
Ask 2 simple SAS questions,thanksSAS question
请问SAS中如何通过组内一个变量的值控制整组变量【包子】弱问个dummy variable问题
相关话题的讨论汇总
话题: 999999话题: number3话题: number1话题: number2话题: var1
进入Statistics版参与讨论
1 (共1页)
x***6
发帖数: 15
1
版上牛人多,问一个处理data的问题。
data中的subject,如果满足3个条件中的一个就可以。
1。var1 等于8个数值中的一个,
2。var1 介于一个范围也可以,
3。var2-9 等于3个值中一个也可以。
这个该怎么编?我想的是分别弄出符合条件的3个data,然后合并。
还是一个能处理完?
多谢了!
H*******r
发帖数: 98
2
one is...
data select;
set original;
where var1 in (value1 value2 value3 value4 value5 value6 value7 value8)
or
var1 between minvalue and maxvalue or
var2 in (number1 number2 number3) or
var3 in (number1 number2 number3) or
var4 in (number1 number2 number3) or
var5 in (number1 number2 number3) or
var6 in (number1 number2 number3) or
var7 in (number1 number2 number3) or
var8 in (number1 number2 number3) or
var9 in (number1 number2 number3);
run;
or...
proc format;
invalue cona value1= _same_
value2= _same_
value3= _same_
value4= _same_
value5= _same_
value6= _same_
value7= _same_
value0= _same_
other= 999999;
invalue conb minvalue - maxvalue= _same_
other= 999999;
invalue conc number1= _same_
number2= _same_
number3= _same_
other= 999999;
run;
data select;
set original;
if input(var1, cona.)^= 999999 or
input(var1, conb.)^= 999999 or
input(var2, conc.)^= 999999 or
input(var3, conc.)^= 999999 or
input(var4, conc.)^= 999999 or
input(var5, conc.)^= 999999 or
input(var6, conc.)^= 999999 or
input(var7, conc.)^= 999999 or
input(var8, conc.)^= 999999 or
input(var9, conc.)^= 999999;
run;
...
w*******9
发帖数: 1433
3
The code could be shorter:
data new;
set old;
indx = 0;
if var1 in (8个数字)or var1 between a and b then indx=1;
do i=2 to 9;
if vvaluex(compress("var"||i)) in (3 个数字)then indx=1;
end;
run;
Then just select those obs with indx=1.

【在 x***6 的大作中提到】
: 版上牛人多,问一个处理data的问题。
: data中的subject,如果满足3个条件中的一个就可以。
: 1。var1 等于8个数值中的一个,
: 2。var1 介于一个范围也可以,
: 3。var2-9 等于3个值中一个也可以。
: 这个该怎么编?我想的是分别弄出符合条件的3个data,然后合并。
: 还是一个能处理完?
: 多谢了!

t*****w
发帖数: 254
4
* data three is what you wanted *;
data one;
input var1-var9;
cards;
1 2 3 7 9 9 4 7 10
1.1 4.1 4 3 3.4 7 7.4 8 7.3
2 2.1 2.5 2 2.1 5 2 2.1 2.5
;
data two three;
set one;
if var1 in (1, 4, 4,3 , 3.4, 7, 7.4, 8, 7.3,9) then output three;
else if 4 le var1 le 6 then output three;
array eight_var{8} var2-var9;
do i =1 to 8;
if eight_var{i} in (5, 5.1,5.5) then output three;
end;
output two;
run;
proc print data=three;
run;
x***6
发帖数: 15
5
Big thanks!
1 (共1页)
进入Statistics版参与讨论
相关主题
【包子】弱问个dummy variable问题怎样用R除掉DUPLICATED RECORD
新手请教大家一个sas 问题,多谢指教[合集] └ Re: 关于stepwise programming
请问如果用SAS 解决这个问题Ask 2 simple SAS questions,thanks
help! 读CSV文件读得要崩溃了请问SAS中如何通过组内一个变量的值控制整组变量
请问sas中一个变量的内容被两个左斜杠(/)分成了三部分再请教一个PROC SQL JOIN的问题。。。。
[急求助] survival analysis (SAS)一个SAS问题(transpose?)
关于stepwise programmingA SAS question
怎样用R定位变量的位置怎样储存我想要的proc means 的结果?
相关话题的讨论汇总
话题: 999999话题: number3话题: number1话题: number2话题: var1