반응형
dplyr :: 하나의 열을 선택하고 벡터로 출력
이 질문에 이미 답변이 있습니다.
- dplyr tbl 열을 벡터로 추출 6 답변
dplyr::select
결과가 하나의 열이면 벡터를 반환하는 방법이 있습니까?
현재 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"
최선의 방법 (IMO) :
library(dplyr)
df <- data_frame(x = 1:10, y = LETTERS[1:10])
df %>%
filter(x > 5) %>%
.$y
dplyr 0.7.0에서는 이제 pull ()을 사용할 수 있습니다.
df %>% filter(x > 5) %>% pull(y)
이 같은?
> res <- df %>% filter(x>5) %>% select(y) %>% sapply(as.character) %>% as.vector
> res
[1] "F" "G" "H" "I" "J"
> class(res)
[1] "character"
당신은 또한 시도 할 수 있습니다
res <- df %>%
filter(x>5) %>%
select(y) %>%
as.matrix() %>%
c()
#[1] "F" "G" "H" "I" "J"
class(res)
#[1] "character"
참고 URL : https://stackoverflow.com/questions/27149306/dplyrselect-one-column-and-output-as-vector
반응형
'Nice programing' 카테고리의 다른 글
Android 스튜디오가 'Gradle :'_debugCompile '종속성 해결'또는 'detachedConfiguration1'에서 멈춤 (0) | 2020.12.11 |
---|---|
mongodb-찾아서 집계하는 방법 (0) | 2020.12.11 |
.NET의 부정확 한 소수 (0) | 2020.12.11 |
Kestrel은 Node.js와 같은 요청을 처리하기 위해 단일 스레드를 사용합니까? (0) | 2020.12.11 |
CVS보다 SVN을 사용하면 어떤 이점이 있습니까? (0) | 2020.12.11 |