1
刪除缺失觀察我有反覆觀察的數據集(例如,在5周的觀察結果)移調過程,而在SAS
也有多個行每個個體(未每個人都一樣)
ID val1 val2 val3 val4 val5
1 0 0 1 1 1
1 . . 2 2 2
2 1 1 1 . .
2 2 2 2 . .
3 1 1 . . .
步驟1 :我申請移調過程
proc transpose data=original out=tranposed;
by ID; var val1-val&_valcount; /* in this example &_valcount = 5 */
run;
ID val col1 col2
1 val1 0 .
1 val2 0 .
1 val3 1 2
1 val4 1 2
1 val5 1 2
2 val1 1 2
2 val2 1 2
2 val3 1 2
2 val4 . .
2 val5 . .
3 val1 1 .
3 val2 1 .
3 val3 . .
3 val4 . .
3 val5 . .
步驟2:nmiss()與缺失值僅
刪除行data transposed; set transposed;
if nmiss(of _numeric_) EQ &_repeatcount then delete;
/* in this example &_repeatcount = 2 */
run;
ID val col1 col2
1 val1 0 .
1 val2 0 .
1 val3 1 2
1 val4 1 2
1 val5 1 2
2 val1 1 2
2 val2 1 2
2 val3 1 2
3 val1 1 .
3 val2 1 .
由於原始數據集大,調換數據集的大小是非常大的,它需要很長的計算時間去換位數據集。
是否有任何方法來步驟1 &步驟2組合成單個步驟,如刪除觀測而轉置數據集,以節省存儲和時間?
你提前知道了 「repeatcount」?每個小組都一樣嗎? – Tom
是的,我提前知道「重複計數」。每個小組都不一樣。我只知道,「最大」 repeatcount – jaerung
不應該有辦法做到這一點使用數據集選項 - 在哪裏? – Reeza