dplyr :: filter 조건 자 함수 내에서 magrittr 파이프와 % in %를 결합하는 방법은 무엇입니까?

읽다

입력 데이터 프레임이 주어지면

library(dplyr)
( df <- data_frame(id = c(1,1,1,2,2,3), y = letters[1:6]) )
# # A tibble: 6 × 2
#      id     y
#   <dbl> <chr>
# 1     1     a
# 2     1     b
# 3     1     c
# 4     2     d
# 5     2     e
# 6     3     f

하나의 부분 집합하고 싶어 가정 df[, c("id", "y")]에만있는 가장 일반적인 두 가지 식별자와 id 1과를 2:

df %>% group_by(id) %>% tally %>% arrange(desc(n)) %>% head(2) %>% .$id %>% print -> ids #*
# [1] 1 2 

질문 : 술어 함수 내부에 파이프를 사용하는 방법이 있습니까filter 의 정맥은 :

df %>% filter(
  id %in%  df %>% group_by(id) %>% tally %>% arrange(desc(n)) %>% head(2) %>% .$id  )
# Error: no applicable method for 'group_by_' applied to an object of class "logical"

df %>% filter(
  id %in%  (df %>% group_by(id) %>% tally %>% arrange(desc(n)) %>% head(2) %>% .$id)  )
# Error: cannot handle

df %>% filter(
  id %in%  {df %>% group_by(id) %>% tally %>% arrange(desc(n)) %>% head(2) %>% .$id}  )
# Error: cannot handle

?

내 말은, 마지막 두 술어는 filter다음 외부에서 예상대로 작동하는 것 같습니다 .

df$id %in% (df %>% group_by(id) %>% tally %>% arrange(desc(n)) %>% head(2) %>% .$id)
# [1]  TRUE  TRUE  TRUE  TRUE  TRUE FALSE 
df$id %in% {df %>% group_by(id) %>% tally %>% arrange(desc(n)) %>% head(2) %>% .$id}
# [1]  TRUE  TRUE  TRUE  TRUE  TRUE FALSE

참고 : 임시 변수를 사용할 수 있다는 것을 알고 있습니다 ids.

df %>% filter(id %in% ids) # *ids <- c(1,2)

또는 사용할 수 있습니다 *_join.

df %>% inner_join(
  df %>% group_by(id) %>% tally %>% arrange(desc(n)) %>% head(2) %>% select(-n))

둘 다 예상 출력을 산출합니다 .

# # A tibble: 5 × 2
#      id     y
#   <dbl> <chr>
# 1     1     a
# 2     1     b
# 3     1     c
# 4     2     d
# 5     2     e
홍우이

그 자체로 이것을 복잡하게 만들지 마십시오.

ids <- (df %>% count(id) %>% arrange(n) %>% tail(2))$id
filter(df, id %in% ids)

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

R / dplyr : 파이프 라이닝 %> % 연산자와 함께 필터 함수를 사용하는 방법은 무엇입니까?

분류에서Dev

루프 내에서 조건이 충족되는 경우 while 루프에서 병렬로 함수를 호출하는 방법은 무엇입니까?

분류에서Dev

Pandas에서 조건부 누적 이동 함수를 수행하는 방법은 무엇입니까?

분류에서Dev

두 개의 자바 스크립트 함수를 조건이있는 세 번째 함수와 병합하는 방법은 무엇입니까?

분류에서Dev

if 조건 내에서 변수를 선언하는 방법은 무엇입니까?

분류에서Dev

dplyr * _join () 함수에 대해 두 개의 'by'인수를 사용하여 R에서 두 데이터 세트를 결합하는 방법은 무엇입니까?

분류에서Dev

dplyr :: filter_at 결과를 결합하는 방법이 있습니까? (한 번에 많은 변수 필터링)

분류에서Dev

C ++에서 bind ()를 조건 자로 사용하는 이유와 방법은 무엇입니까?

분류에서Dev

dplyr tibble 문자 변수에 수학 기호를 포함하는 방법은 무엇입니까?

분류에서Dev

openpyxl 조건부 서식과 함께 자리 표시자를 사용하는 방법은 무엇입니까?

분류에서Dev

함수 내부의 foreach 루프를 기반으로 PHP에서 if 조건을 작성하는 방법은 무엇입니까?

분류에서Dev

jq에서 업데이트와 함수 결과를 결합하는 방법은 무엇입니까?

분류에서Dev

자바 스크립트 배열에서 조건 자와 일치하는 요소 수를 얻는 방법은 무엇입니까?

분류에서Dev

Python : Python의 데이터 프레임 열에서 조건부 문자 제거를 수행하는 방법은 무엇입니까?

분류에서Dev

"내"파이썬 인터프리터에서 내장 함수를 정의하는 방법은 무엇입니까?

분류에서Dev

pyspark의 루프 내에서 동적 사용자 지정 함수를 만드는 방법은 무엇입니까?

분류에서Dev

문자열에서 함께 알파와 숫자의 조합을 감지하는 방법은 무엇입니까?

분류에서Dev

다른 데이터 프레임에서 데이터를 가져오고 조건이있는 함수를 적용하는 방법은 무엇입니까?

분류에서Dev

ON 절에 둘 이상의 조건자를 사용하여 Sequelize에서 LEFT JOIN을 수행하는 방법은 무엇입니까?

분류에서Dev

ON 절에 둘 이상의 조건자를 사용하여 Sequelize에서 LEFT JOIN을 수행하는 방법은 무엇입니까?

분류에서Dev

자식 함수 인수에서 부모의 매개 변수를 참조하는 방법은 무엇입니까?

분류에서Dev

Theano에서 공유 변수에 조건부 업데이트를 수행하는 방법은 무엇입니까?

분류에서Dev

R에서 미리 정의 된 구조의 기존 변수 집합에 대해 for 루프 내에서 함수를 적용하는 방법은 무엇입니까?

분류에서Dev

if 조건으로 루프에서 반복자를 증가시키는 방법은 무엇입니까?

분류에서Dev

dplyr :: filter () + dplyr :: across () 조합과 함께 any (), all () 등을 사용하는 올바른 방법은 무엇입니까?

분류에서Dev

조건에 따라 데이터 프레임에 승수를 적용하는 방법은 무엇입니까?

분류에서Dev

Active Record에서 조건이있는 레코드 목록과 각 자녀의 수를 검색하는 방법은 무엇입니까?

분류에서Dev

MATLAB에서 제약 조건 정의 함수에 인수를 전달하는 방법은 무엇입니까?

분류에서Dev

파이썬에서 전역 변수와 사전 키를 결합하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    R / dplyr : 파이프 라이닝 %> % 연산자와 함께 필터 함수를 사용하는 방법은 무엇입니까?

  2. 2

    루프 내에서 조건이 충족되는 경우 while 루프에서 병렬로 함수를 호출하는 방법은 무엇입니까?

  3. 3

    Pandas에서 조건부 누적 이동 함수를 수행하는 방법은 무엇입니까?

  4. 4

    두 개의 자바 스크립트 함수를 조건이있는 세 번째 함수와 병합하는 방법은 무엇입니까?

  5. 5

    if 조건 내에서 변수를 선언하는 방법은 무엇입니까?

  6. 6

    dplyr * _join () 함수에 대해 두 개의 'by'인수를 사용하여 R에서 두 데이터 세트를 결합하는 방법은 무엇입니까?

  7. 7

    dplyr :: filter_at 결과를 결합하는 방법이 있습니까? (한 번에 많은 변수 필터링)

  8. 8

    C ++에서 bind ()를 조건 자로 사용하는 이유와 방법은 무엇입니까?

  9. 9

    dplyr tibble 문자 변수에 수학 기호를 포함하는 방법은 무엇입니까?

  10. 10

    openpyxl 조건부 서식과 함께 자리 표시자를 사용하는 방법은 무엇입니까?

  11. 11

    함수 내부의 foreach 루프를 기반으로 PHP에서 if 조건을 작성하는 방법은 무엇입니까?

  12. 12

    jq에서 업데이트와 함수 결과를 결합하는 방법은 무엇입니까?

  13. 13

    자바 스크립트 배열에서 조건 자와 일치하는 요소 수를 얻는 방법은 무엇입니까?

  14. 14

    Python : Python의 데이터 프레임 열에서 조건부 문자 제거를 수행하는 방법은 무엇입니까?

  15. 15

    "내"파이썬 인터프리터에서 내장 함수를 정의하는 방법은 무엇입니까?

  16. 16

    pyspark의 루프 내에서 동적 사용자 지정 함수를 만드는 방법은 무엇입니까?

  17. 17

    문자열에서 함께 알파와 숫자의 조합을 감지하는 방법은 무엇입니까?

  18. 18

    다른 데이터 프레임에서 데이터를 가져오고 조건이있는 함수를 적용하는 방법은 무엇입니까?

  19. 19

    ON 절에 둘 이상의 조건자를 사용하여 Sequelize에서 LEFT JOIN을 수행하는 방법은 무엇입니까?

  20. 20

    ON 절에 둘 이상의 조건자를 사용하여 Sequelize에서 LEFT JOIN을 수행하는 방법은 무엇입니까?

  21. 21

    자식 함수 인수에서 부모의 매개 변수를 참조하는 방법은 무엇입니까?

  22. 22

    Theano에서 공유 변수에 조건부 업데이트를 수행하는 방법은 무엇입니까?

  23. 23

    R에서 미리 정의 된 구조의 기존 변수 집합에 대해 for 루프 내에서 함수를 적용하는 방법은 무엇입니까?

  24. 24

    if 조건으로 루프에서 반복자를 증가시키는 방법은 무엇입니까?

  25. 25

    dplyr :: filter () + dplyr :: across () 조합과 함께 any (), all () 등을 사용하는 올바른 방법은 무엇입니까?

  26. 26

    조건에 따라 데이터 프레임에 승수를 적용하는 방법은 무엇입니까?

  27. 27

    Active Record에서 조건이있는 레코드 목록과 각 자녀의 수를 검색하는 방법은 무엇입니까?

  28. 28

    MATLAB에서 제약 조건 정의 함수에 인수를 전달하는 방법은 무엇입니까?

  29. 29

    파이썬에서 전역 변수와 사전 키를 결합하는 방법은 무엇입니까?

뜨겁다태그

보관