首页 > 解决方案 > 绘制 R 中两个数据框中出现值的次数

问题描述

我有两组数据。每个都包含一个分子名称列和一个分子在样品中出现次数的列。我想创建一个散点图,其中包含分子在 x 轴上的数据集 #1 中出现的次数以及它在数据集 #2 中出现的次数。如果一个分子在一个数据集中而不在另一个数据集中,则它出现 0 次。

例子:

dat1 <- data.frame(
name = c("A", "B", "D", "E")
count = c(10, 1, 30, 10)
)
dat2 <- data.frame(
name = c("A", "B", "C", "F")
count = c(1, 3, 50, 40)
)

点 #1 将是对应于 A 的 (10,1),点 #2 将是 (1,3),点 #3 将是 (0,50),依此类推。我不想标记我的观点,因为我的数据集包含数以万计的分子。

标签: rdataframeplotscatter-plot

解决方案


尝试加入data.frames

full_join(dat1, dat2, by="name") %>% 
  mutate_all(function(xx) ifelse(is.na(xx), 0, xx)) %>% 
  ggplot(aes(count.x, count.y)) +
  geom_point()

产生

在此处输入图像描述


推荐阅读