2016-07-06 11 views
-3

いくつかの値を与えてカテゴリ変数を作成しています。 ifループは実行されますが、存在しなければならないにもかかわらず "D"で何の観測も与えません。何が起きているのか知っていますか?Rは私のifループ条件を守っていません

ありがとうございます。

data$n_clasif<-"D" 
for (i in 1:n){ 
    if (data$forecast[i]>=10000){ 
     data$n_clasif[i]="A" 
    } else if (data$forecast[i]<10000 & data$forecast[i]>=2000){ 
     data$n_clasif[i]="B" 
    } else if (data$forecast[i]<2000 && data$CL_CLASIF_ROLLO[i]!="D"){ 
     data$n_clasif[i]="C" 
    } else { 
     data$n_clasif[i]="D" 
    } 
} 
+3

ようこそStackOverflow。これを読んで質問を編集してください。 http://stackoverflow.com/help/how-to-ask – Adam

+1

'cut()'について読んでください。 – zx8754

答えて

1
n <- 100 
data <- data.frame(forecast = runif(n, min =1, max = 20000), 
       n_clasif = NA, 
       CL_CLASIF_ROLLO = c('A','D')) 
for (i in 1:n){ 
    if(data$forecast[i]>=10000){ 
    data$n_clasif[i]<-"A" 
} else if(data$forecast[i]<10000 & data$forecast[i]>=2000){ 
    data$n_clasif[i]<-"B" 
} else if(data$forecast[i]<2000 & data$CL_CLASIF_ROLLO[i]!="D"){ 
    data$n_clasif[i]<-"C" 
} else { 
    data$n_clasif[i]<-"D" 
} 
} 

私はあなたのデータがどのように見えるかのいくつかの仮定をしました。

+0

Bret!ありがとう!あなたの前提はデータ構造に関して正しいが、Rは「エラー(データ$予測[i] = 10000){ の値がTRUE/FALSEが必要な値が欠けている」と言われていますそれは何について知っていますか? –

+0

データが欠落していますが、その場合に何をしたいのですか? – Gregor

+0

'ifelse()'、ここでは 'data $ n_clasif < - ifelse(data $ forecast> = 10000、" A "、ifelse ... ' – Noah

関連する問題