ifelseとis.naを使って新しい変数を作成したい。 しかし問題は、このifelseが1とNAだけを返すということです。 問題は最初のifelseにあるようです。なぜなら私はifelseを1つずつ実行し、最初のものだけがNAを返すからです。私はなぜ、3 ifelseのコードが似ているように見えるので、理解できません。誰か知っていますか?私はRでis.naを使うとベクトルはFALSEではなくNAを返す
eassociacao<-ifelse((!is.na(dados$CENTRAL)|dados$CENTRAL!=" ") &
(!is.na(dados$SISTEMA)|dados$SISTEMA!=" "),1,
ifelse((!is.na(dados$CENTRAL)|dados$CENTRAL!=" ") &
(is.na(dados$SISTEMA)|dados$SISTEMA==" "),2,3))
私は最初に '|'を '&'で置き換えたいと考えています – HubertL
これを試してください: 'eassociacao <-ifelse((!is isna(dados $ CENTRAL)!=" ")&(!is.na( (dados $ SISTEMA)== "))、2、3)$$$$ $$$$$$$$$$$$$$$$$$$$$ '。動作しない場合は、再現可能な例を表示してください。 – cimentadaj
@cimentadajこれは悪いことです。あなたは '!is.na()'の結果が '!='から '' ''になっているかどうかをテストしています。意味がない。 – Gregor