#r #dplyr #r-markdown #flextable
Вопрос:
Это непонятная просьба. Я пытаюсь выполнить условное форматирование в гибкой форме для документа RMarkdown, и, короче говоря, мне нужен список значений, полученных из фрейма данных.
Вот пример фрейма данных:
df <- tibble(COL_1 = c(1, 2, 3),
COL_2 = c("A", "B", "C"),
COL_3 = c("Peach", "Plum", "Pear"))
> df
# A tibble: 3 x 3
COL_1 COL_2 COL_3
<dbl> <chr> <chr>
1 1 A Peach
2 2 B Plum
3 3 C Pear
Я ищу код для достижения следующего (я не зависим от типа значений):
"1", "2", "3", "A", "B", "C", "Peach", "Plum", "Pear"
У кого-нибудь есть решение? Бонусные баллы, если это дружелюбно к dplyr.
Кроме того, если у кого-нибудь есть аккуратный, чистый способ форматирования цвета и фона большого количества значений во множестве столбцов в гибкой таблице, я был бы признателен за помощь. Я сомневаюсь, что решение, которое я ищу, является оптимальным.
Ответ №1:
unlist
воля помогает
df %>% unlist %>% as.vector
[1] "1" "2" "3" "A" "B" "C" "Peach" "Plum" "Pear"
Комментарии:
1. Идеальное решение и бонусные баллы за то, что оно вписывается в мой трубопровод dplyr.
Ответ №2:
Другой вариант-перейти к матрице и свернуться в вектор с. c
library(magrittr)
df %>% as.matrix() %>% c
#[1] "1" "2" "3" "A" "B" "C" "Peach" "Plum" "Pear"
Ответ №3:
Мы можем stack
и pull
ценности
library(dplyr)
stack(df) %>%
pull(values)
#[1] "1" "2" "3" "A" "B" "C" "Peach" "Plum" "Pear"
Комментарии:
1. Стек был функцией, которую я изначально искал, спасибо. Это, вероятно, самый интуитивный подход, особенно с точки зрения того, кто читает код.