dplyr::select
приводит к data.frame, есть ли способ заставить его вернуть вектор, если результатом является один столбец?
В настоящее время мне нужно сделать дополнительный шаг (res <- res$y
), чтобы преобразовать его в вектор из data.frame, см. этот пример:
#dummy data
df <- data.frame(x = 1:10, y = LETTERS[1:10], stringsAsFactors = FALSE)
#dplyr filter and select results in data.frame
res <- df %>% filter(x > 5) %>% select(y)
class(res)
#[1] "data.frame"
#desired result is a character vector
res <- res$y
class(res)
#[1] "character"
Что-то вроде:
res <- df %>% filter(x > 5) %>% select(y) %>% as.character
res
# This gives strange output
[1] "c(\"F\", \"G\", \"H\", \"I\", \"J\")"
# I need:
# [1] "F" "G" "H" "I" "J"