가끔은 dplyr 체인 내에서 데이터 프레임을 (일반적으로 수정 된) 자체 버전에 조인해야합니다. 이런 식으로 :dplyr 체인 내에서 데이터 프레임을 자체에 가입시키는 방법은 무엇입니까?
df <- data.frame(
id = c(1,2,3)
, status = c('foo','bar','meh')
, spouseid = c(4,3,2)
)
df %>%
filter(status == 'foo' | status == 'bar') %>%
# join the filtered table to itself using the dot as the right-hand side
left_join(., by = c('id' = 'spouseid'))
내가 이것을 시도하면 Error in is.data.frame(y) : argument "y" is missing, with no default
이됩니다.
원본 데이터 프레임을 수정 된 데이터 프레임에 결합 하시겠습니까? 그렇다면 조인 라인은 원래의 데이터 프레임을 rhs에 넣을'left_join (df, by = c ('id'= 'spouseid'))'일 수 있습니다. 최종 결과에서 원하는 행에 따라이 값을'right_join' 또는'full_join'으로 변경할 수 있습니다. – eipi10
체인을 끊을 필요없이 편집 된 데이터 프레임을 자체에 가입시키는 데 가장 관심이 있습니다. 과거에는 항상 편집을 먼저하고 새로운 객체에 저장 한 다음 조인을 수행하거나 y 인수에서 조인 자체 내에서 동일한 편집을 수행했습니다. – crazybilly