2017-06-26 25 views
1

character(0)NAに変換する方法をR言語のリストで設定しますか?R言語のリストで文字(0)をNAに変換する方法は?

例:

a = list("a", "character(0)", "b", "c") 

a = list("a", "NA", "b", "c") 

に感謝します。

+0

などをx == '文字(0)') 'NA' else x) '?? – MichaelChirico

+0

実際には "character(0)"というフレーズを含む文字列ですか? – Dason

+0

私は入力が間違っていると思っています。本当に欲しいのは次のようなものです: 'lapply(a、function(x)if(!length(x)&& is.character(x))NA_character_ else x)' – MichaelChirico

答えて

2

(あなたがcharacter(0)代わりの"character(0)"を意味仮定)のみcharacter(0)を交換してください:

a = list("a", character(0), "b", "c") 

lapply(a, function(x) if(identical(x, character(0))) NA_character_ else x) 

#[[1]] 
#[1] "a" 

#[[2]] 
#[1] NA 

#[[3]] 
#[1] "b" 

#[[4]] 
#[1] "c" 

すべての長さが0の要素に置き換えます(場合 `lapply(関数(x)は:

a[lengths(a) == 0] <- NA_character_ 

a 
#[[1]] 
#[1] "a" 

#[[2]] 
#[1] NA 

#[[3]] 
#[1] "b" 

#[[4]] 
#[1] "c" 
+0

完璧でした! Tks! – Thaise

1

a[a=="character(0)"] <- "NA"

あなたの例を考えると、これはあなたが求めるものを提供していますが、実際にあなたがが、何をしたいということでしょうか?

関連する問題