У меня есть три фрейма данных: df1
, df2
и df3
. У каждого из них есть столбцы date
, A
, B
, C
. Я убедился, что все столбцы даты в каждом из фреймов данных были одного класса (Date), все столбцы A в каждом из фреймов данных были одного класса (фактора), а классы двух других были целыми числами. Я использовал ungroup()
, чтобы избавиться от любой группировки, которую я использовал в фреймах данных.
Итак, фреймы данных выглядят примерно так:
- Date | A | B | C
1 2020-01-01 | House | 1 | 2
2 2020-01-02 | House | 3 | 4
3 2020-01-03 | House | 5 | 6
- Date | A | B | C
1 2020-01-01 | Field | 1 | 2
2 2020-01-02 | Field | 3 | 4
3 2020-01-03 | Field | 5 | 6
- Date | A | B | C
1 2020-01-01 | Store | 1 | 2
2 2020-01-02 | Store | 3 | 4
3 2020-01-03 | Store | 5 | 6
Затем я попытался использовать new_df <- bind_rows(df1, df2, df3)
, чтобы добавить их в единый фрейм данных (new_df). Ошибок нет. Я использовал new_df$A <– as.factor(new_df$C=A)
, чтобы убедиться, что A действительно является фактором.
new_df выглядит примерно так:
- Date | A | B | C
1 2020-01-01 | House | 1 | 2
2 2020-01-02 | House | 3 | 4
3 2020-01-03 | House | 5 | 6
4 2020-01-01 | Field | 1 | 2
5 2020-01-02 | Field | 3 | 4
6 2020-01-03 | Field | 5 | 6
7 2020-01-01 | Store | 1 | 2
8 2020-01-02 | Store | 3 | 4
9 2020-01-03 | Store | 5 | 6
Затем я сделал ggplot с graph <– ggplot(data = new_df, aes(x = B, y = C, group = A) + geom_line() + transition_reveal(date)
. Ошибок нет. Я проверил данные графика, и данные были типа double (S3: Date), factor, integer и integer (как и ожидалось).
Когда я go печатал график с animate(graph, renderer=gifski_renderer("graph.gif")
by при нажатии кнопки «запустить текущий фрагмент» график распечатывается нормально, и я могу открыть файл gif.
Однако, когда я нажимаю Knit с выводом в pdf_document, появляется следующая ошибка:
Error: Unsupported device In addition: Warning messages:
1: In bind_rows_(x, .id) : Unequal factor levels: coercing to character
2: In bind_rows_(x, .id) : binding character and factor vector, coercing into character vector
3: In bind_rows_(x, .id) : binding character and factor vector, coercing into character vector
4: In bind_rows_(x, .id) : binding character and factor vector, coercing into character vector Execution halted.
Ошибка прослеживается до строки, где я использовал функцию animate()
.
Я не уверен, в чем проблема, потому что я не могу определить, где находятся неравные факторы, но это не давая мне получить желаемый результат.
Есть мысли?