>

다음 시나리오에서는 빈 데이터 프레임이 나타납니다

D = data.frame(X = c("x1", "x2", "x3"))
vals = c("x1", "x2")
col = "X"
dplyr::filter(D, col %in% vals)


그러나 다음과 같이 작동합니다

dplyr::filter(D, X %in% vals)

컬럼 이름이나 필터링 할 값을 하드 코딩 할 수 없습니다. 작동하려면 첫 번째 시나리오가 필요합니다.

  • 답변 # 1

    sym 로 변환 할 수 있습니다 bol 및 평가 ( !! )

    dplyr::filter(D, !! rlang::sym(col) %in% vals)
    #    X
    #1 x1
    #2 x2
    
    

    <시간>

    또는 다른 옵션은 filter_at 입니다

    D %>%
        filter_at(vars(col), any_vars(. %in% vals))
    
    

관련 자료

  • 이전 python - django 앱을 heroku로 디플로 핑 - 애플리케이션 오류
  • 다음 Timer to throw Method Once a Week - 일주일에 한 번 메서드를 throw하는 타이머 - c #, aspnet