私は、各変数の1,2,3,4,5,6,7の有効な値を持つ3つの変数を持つデータフレームを持っています。変数に割り当てられている数値がない場合は、NA
と表示されます。各行は3つのすべての変数間NA
を持っているか、3つの変数の一つで一つの値だけを持つことができrの複数の列の値に基づいて変数を作成する方法
ak_eth co_eth pa_eth
1 NA 1 NA
2 NA NA 1
3 NA NA NA
4 2 NA NA
5 NA NA 4
6 NA NA NA
:以下のようなデータフレームa
が見えます。私はrecode
という新しい変数を作成して、既存の3つの変数から値を取得します。 3つの既存の変数がすべてNA
である場合、新しい値はNA
です。既存の3つの変数のいずれかに値がある場合は、その値を新しい変数にとります。 これを試しましたが、私にとってはうまくいかなかったようです。
a$recode[is.na(a$ak_eth) & is.na(a$co_eth) & is.na(a$pa_eth)] <- "NA"
library(car)
a$recode <- recode(a$ak_eth, "1=1;2=2;3=3;4=4;5=5;6=6;7=7")
a$recode <- recode(a$co_eth, "1=1;2=2;3=3;4=4;5=5;6=6;7=7")
a$recode <- recode(a$pa_eth, "1=1;2=2;3=3;4=4;5=5;6=6;7=7")
ご了承ください。ありがとう!
「NA」の文字を作成しないでください – akrun