Я пытаюсь присвоить число от 1 до 10 ряду векторов, основанных на том, какой квантиль они находятся в кадре данных.Вложенное выражение ifelse для квантилей
До сих пор я пытался
quants <- quantile(Data$Avg, c(.1, .2, .3, .4, .5, .6, .7, .8, .9))
Data$quant <- for (i in nrow(Data)) {
ifelse(Data$Avg [i] < quants[1], Data$quant[1] = 1 ,
ifelse(Data$Avg [i] > quants[1] & Data$Avg[i] < quants[2], Data$quant[1] = 2, Data$quant = 3
))}
я получаю следующую ошибку:
Может кто-нибудь запятнать ошибку, которую я делаю здесь?
Попробуйте использовать обычный, если оператор вместо 'ifelse' –
Есть куча ошибок синтаксиса. Например, 'Data $ quant [1] = 1' должно быть' 1', а использование цикла 'for' не требуется. Я бы рассмотрел использование 'cut' или' findInterval'. – lmo