모든 열에 yyyy-mm이있는 여러 데이터 프레임 (총 17 개)과 그 달에 해당하는 값이있는 다른 열을 결합하고 싶습니다.열의 특정 값으로 열 바인딩
데이터 프레임이 모두 같은 달에 시작하지 않으며 길이가 비슷하지 않습니다.
모든 데이터 프레임의 yyyy-mm이 각각 결합 된 데이터 프레임에 표시되도록 조합하고 NA가없는 값이없는 경우 행을 채우므로 아무것도 건너 뛰지 않습니다.
어떻게하면됩니까?
모든 열에 yyyy-mm이있는 여러 데이터 프레임 (총 17 개)과 그 달에 해당하는 값이있는 다른 열을 결합하고 싶습니다.열의 특정 값으로 열 바인딩
데이터 프레임이 모두 같은 달에 시작하지 않으며 길이가 비슷하지 않습니다.
모든 데이터 프레임의 yyyy-mm이 각각 결합 된 데이터 프레임에 표시되도록 조합하고 NA가없는 값이없는 경우 행을 채우므로 아무것도 건너 뛰지 않습니다.
어떻게하면됩니까?
여기에 full_join
을 사용하여 마무리하고 있지만 재현 예제는 문제를 이해하는 것이 좋습니다. 여러 개의 data.frames로 파이프 만 사용하십시오.
tbl_a <- tibble(
month = c("2017-01", "2017-02", "2017-03"),
value = c(1, 2, 3)
)
tbl_b <- tibble(
month = c("2017-01", "2017-03", "2017-04"),
value = c(5, 6, 7)
)
tbl_c <- tibble(
month = c("2017-01", "2017-06", "2017-07"),
value = c(8, 9, 10)
)
full_join(tbl_a, tbl_b, by="month") %>%
full_join(tbl_c, by="month")
# A tibble: 6 x 4
month value.x value.y value
<chr> <dbl> <dbl> <dbl>
1 2017-01 1 5 8
2 2017-02 2 NA NA
3 2017-03 3 6 NA
4 2017-04 NA 7 NA
5 2017-06 NA NA 9
6 2017-07 NA NA 10
답변 해 주셔서 감사합니다. 그것이 사용 고정 : reg_month_temp < - 병합 (ben_regsum, delta_regsum, 의해 을 = "year_month"모든 = TRUE)
그 다음 병합 된 데이터 프레임을 한 번에 하나 개의 데이터 프레임을 추가했다.이것은 제대로 작동했습니다. all = TRUE를 사용하여 year_month에 대한 모든 항목을 유지하고 나머지는 NA로 채 웁니다.
예상되는 출력과 함께 최소한의 [재현 가능한 예] (https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)를 제공해주십시오. – lmo
병합 기능을 살펴 보겠습니다. 공통 열에 모든 데이터 프레임을 병합하려는 경우 (날짜) – denis