我有一个数据框,其中天为列标题,id为行标题,其中包含每个单元格中的观察计数。我需要重组数据,以便可以将其用于创建散点图。
示例数据:
day1 day2 day3 day4
ID1 1 3 4 1
答案 0 :(得分:1)
我已在您的示例数据中添加了几行
library(ggplot2)
library(reshape2)
df <- read.table(text =
"day1 day2 day3 day4
ID1 1 3 4 1
ID2 2 4 1 3
ID3 1 1 3 4", header = TRUE)
df %>%
as.matrix %>%
reshape2::melt(value.name = "count") -> new_df
Var1 Var2 count
1 ID1 day1 1
2 ID2 day1 2
3 ID3 day1 1
4 ID1 day2 3
5 ID2 day2 4
6 ID3 day2 1
7 ID1 day3 4
8 ID2 day3 1
9 ID3 day3 3
10 ID1 day4 1
11 ID2 day4 3
12 ID3 day4 4
现在您可以将其用于按ID
分组的绘图。
ggplot(data = new_df) +
geom_jitter(aes(x = Var2, y = count, color = Var1), width = 0.2, height = 0.2) +
xlab("day")