Переконфигурируйте фрейм данных для диаграммы рассеяния - PullRequest
0 голосов
/ 12 апреля 2019

У меня есть фрейм данных с днями в качестве заголовка столбца и id в качестве заголовка строки с количеством наблюдений в каждой ячейке.Мне нужно реструктурировать данные, чтобы их можно было использовать для создания диаграммы рассеяния.

пример данных:

    day1  day2  day3  day4
ID1 1      3     4     1

1 Ответ

1 голос
/ 12 апреля 2019

Я добавил несколько строк в данные вашего примера


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")

enter image description here

...