Binning неравномерно распределенный столбец в R
Я должен столбец в R, который имеет неравномерное распределение, как экспоненциальное распределение. Я хочу нормализовать данные, а затем скопировать данные в последующие сегменты.
Видел следующие ссылки, которые помогают нормализовать данные, но ничего не связывают с объединением данных в разные категории.
Стандартизировать столбцы данных в R
Пример: как будет выглядеть распределенный столбец, но с множеством строк.
dat <- data.frame(Id = c(1,2,3,4,5,6,7,8),
Qty = c(1,1,1,2,3,13,30,45))
Я хочу, чтобы столбец был разделен на 5 категорий, которые могут выглядеть следующим образом:
dat <- data.frame(Id = c(1,2,3,4,5,6,7,8),
Qty = c(1,1,1,2,3,13,30,45),
Binned_Category = c(1,1,1,1,2,3,4,5))
Выше binned_Category - образец, значения могут выглядеть не так для данных в реальном мире. Я просто хотел продемонстрировать, как я хочу, чтобы результат выглядел.
1 ответ
Решение
Это поможет:
num_bins <- 5
findInterval(Qty, unique(quantile(Qty, prob = seq(0, 1, 1/num_bins))))