将两个数据帧的行绑定在一起,转换为数字, filter 只要 common.words , group_by y 并计算 mean 。
filter
common.words
group_by
y
mean
library(dplyr) bind_rows(df, df2) %>% mutate_at(vars(starts_with("V")), as.numeric) %>% filter(y %in% common.words) %>% group_by(y) %>% summarise_all(mean)
我们可以使用相同的逻辑来使用基数R. aggregate
aggregate
#rbind both the datasets df1 <- rbind(df, df2) #Convert factor numbers to numeric df1[2:3] <- lapply(df1[2:3], function(x) as.numeric(as.character(x))) #Filter and aggregate aggregate(.~y, df1[df1$y %in% common.words, ], mean)
的 数据 强>
df <- data.frame(df) df2 <- data.frame(df2)