我有一个包含100列的数据集。每次它都会有一些列的缺失值(缺少整列值)。位置是固定的,因此我无法通过columnA = ColumnB指定它们。
我想要做的是将整个缺失列值替换为右侧列中的列值(请参阅测试数据)。谢谢。
DATA have ;
LENGTH make $ 20 ;
INPUT make $ 1-17 a b c d m h u;
CARDS;
AMC Concord 4099 22 . 2 1 . 22
AMC Pacer 4749 17 . 2 1 . 17
Audi 5000 9690 17 . 3 23 . 17
Audi Fox 6295 23 . 1 32 . 23
;
RUN;
DATA want;
LENGTH make $ 20 ;
INPUT make $ 1-17 a b c d m h u;
CARDS;
AMC Concord 4099 22 2 2 1 22 22
AMC Pacer 4749 17 2 2 1 17 17
Audi 5000 9690 17 3 3 23 17 17
Audi Fox 6295 23 1 1 32 23 23;
RUN;
答案 0 :(得分:2)
假设在没有丢失整列的情况下你不能错过:
data want;
set have;
array vars(*) a -- u;
do i = 1 to dim(vars)-1;
if vars(i) = . then vars(i)=vars(i+1);
end;
run;