【发布时间】:2019-12-22 12:39:42
【问题描述】:
我有一个分类列,在大约 78000 条记录的数据集中有大约 1200 个级别。我想根据事件降低水平。例如。 -:
- 出现超过 2000 次的所有关卡都重命名为“A”。
- 所有级别出现超过 1000 次但少于 2000 次 重命名为“B”
- 所有级别出现超过 900 次但少于 1000 次 重命名为“C”
等等。
我不想将不太频繁出现的关卡分组到“其他”中,因为它会隐藏很多重要的关卡。
以下是以数据框为例。
df=data.frame(
ID = c(1:10),
Name = c("Jack", "Mike","Jack", "Mike","Jack", "Mike", "Tom", "Tom", "Smith", "Tony")
)
在这里,我想通过以下方式降低“名称”列的级别:
- 将所有发生 >=3 次的关卡重命名为“A”
- 重命名所有级别 >=2 但
- 将所有发生的级别重命名为“C”
谁能帮我在 R 中做这件事?
【问题讨论】:
标签: r