b*********l 发帖数: 5 | 1 我现在有一个sas data set像如下这样, 其中有三个char variable (id, A, B),数据
中空白的都是missing value.
obs id A B
1 a x1
2 x2
3 b y3
4 y4
5 y5
6 c x6
7 y7
现在我想把id这个column的missing value补完整。比如x2这个obs对应的id是a, y4 y5
这两个obs对应的id是b,y7这个obs对应的id是c。
请问有什么方法呢?多谢大家给点提示了!
|
A*****a 发帖数: 1091 | 2 这个用stata处理可简单了,replace A=A[_n-1] if missing(A)
sas试试这个link里的那些:
http://changchung.com/download/retainLagLeadInterleave_draft.pd
【在 b*********l 的大作中提到】 : 我现在有一个sas data set像如下这样, 其中有三个char variable (id, A, B),数据 : 中空白的都是missing value. : obs id A B : 1 a x1 : 2 x2 : 3 b y3 : 4 y4 : 5 y5 : 6 c x6 : 7 y7
|
j******o 发帖数: 127 | 3 try this:
data have;
input id $ A $ B $;
datalines;
a x 1
. x 2
b y 3
. y 4
. y 5
c x 6
. y 7
;
run;
data obtain;
set have;
retain ID_new;
if id ^='' then ID_new=ID;
run; |
w*****r 发帖数: 92 | 4 可以用array
【在 b*********l 的大作中提到】 : 我现在有一个sas data set像如下这样, 其中有三个char variable (id, A, B),数据 : 中空白的都是missing value. : obs id A B : 1 a x1 : 2 x2 : 3 b y3 : 4 y4 : 5 y5 : 6 c x6 : 7 y7
|
b*********l 发帖数: 5 | 5 thanks!
【在 A*****a 的大作中提到】 : 这个用stata处理可简单了,replace A=A[_n-1] if missing(A) : sas试试这个link里的那些: : http://changchung.com/download/retainLagLeadInterleave_draft.pd
|
b*********l 发帖数: 5 | 6 这个能work,多谢!
【在 j******o 的大作中提到】 : try this: : data have; : input id $ A $ B $; : datalines; : a x 1 : . x 2 : b y 3 : . y 4 : . y 5 : c x 6
|