[英]R: How to summarize categories?
我有 60 个生命类别(称为 CAT)forms(熊、老虎、鲸鱼、树木等),我想为它们分配 10 个汇总类别(称为主题)。
> dt <- fread("lifeforms.csv")
> head(dt)
CAT COUNT
1: bears 10
2: tigers 3
3: whales 9
如果不是很多,我会简单地使用:
dt$THEME[dt$CAT=="tigers" | dt$CAT=="bears"]="Mammals"
但是对于我的 60 个不同的 CAT 值和 10 个主题来说,这需要的时间太长而且太混乱了。 我在另一个 data.table 中有“查找”表:
> catthemes <- fread("catthemes.csv")
> catthemes
CAT THEME
1: bears Mammals
2: tigers Mammals
请问怎么做?
CAT <- c("bears", "tigers", "whales", "lizards")
COUNT <- c(10, 3, 9, 15)
THEME <- c("Mammals", "Mammals", "Mammals", "Reptiles")
lifeforms <- data.frame(CAT, COUNT)
catthemes <- data.frame(CAT, THEME)
new_lifeforms <- merge(lifeforms, catthemes, by="CAT")
CAT COUNT THEME
1 bears 10 Mammals
2 lizards 15 Reptiles
3 tigers 3 Mammals
4 whales 9 Mammals
使用inner_join
的选项
library(dplyr)
inner_join(lifeforms, catthemes, by = 'CAT')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.