0

我必须在 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 是样本,对于给定的数据,在现实世界中的值可能看起来不像这样。我只是想展示我希望输出的样子。

4

1 回答 1

1

这将有助于:

num_bins <- 5
findInterval(Qty, unique(quantile(Qty, prob = seq(0, 1, 1/num_bins))))
于 2018-05-28T16:59:39.023 回答