他の条件が満たされていないときにforループを取得して文字列 'NA'を割り当てることはできません。R:iが真の場合、文字列を行列に代入する
これは私が試したものです...
Height <- c(1.6,3.4,0.42,n/a, 0.5,n/a,1.5,0,n/a,22.0)
Height <- matrix(Height)
h_cat <- matrix(, nrow = length(Height), ncol = 1)
for (i in 1:length(Height)){
if (Height[i]==0)
h_cat[i] <- 'NA'
if (Height[i]>0 & Height[i]<2)
print(Height[i])
h_cat[i] <- '0-2 m'
#print(h_cat[i])
if (Height[i]>=2 & Height[i]<5)
h_cat[i] <- '2-5 m'
if (Height[i]>=5 & Height[i]<10)
h_cat[i] <- '5-10 m'
if (Height[i]>=10)
h_cat[i] <- '>10 m'
else
h_cat[i] <- 'NA'
}
私はどちらかis.na()が、運に行きませんでした。
更新
申し訳ありませんでした。データが追加されました。
いくつかのデータを共有してください... https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example – snoram
あなたは 'cut'関数を調べるべきです – Dason
' h_cat 'は'行列 'であり、行番号と列番号を持つ。それは 'h_cat [i、1]'として索引付けされるべきです。 –