Когда я пытаюсь объединить две таблицы без ключа, это работает отлично. Но когда я предоставляю Ключ, он дает мне странные результаты:
Pls. помогите мне понять, что я упускаю.
library(gapminder)
A <- gapminder[gapminder$country=="India" & gapminder$year %in% 1952:1987, 1:4]
B <- gapminder[gapminder$country=="India" & gapminder$year %in% 1977:2007, c(1:3, 5, 6)]
left_join(A, B)
left_join(A, B, by = "country")
Для без ключа: я получаю
country continent year lifeExp pop gdpPercap
<fct> <fct> <int> <dbl> <dbl> <dbl>
1 India Asia 1952 37.4 NA NA
2 India Asia 1957 40.2 NA NA
3 India Asia 1962 43.6 NA NA
4 India Asia 1967 47.2 NA NA
5 India Asia 1972 50.7 NA NA
6 India Asia 1977 54.2 634000000 813.
7 India Asia 1982 56.6 708000000 856.
8 India Asia 1987 58.6 788000000 977.
Но когда я использую Ключ, он дает мне 56 строк:
# A tibble: 56 x 7
country continent year.x lifeExp year.y pop
<fct> <fct> <int> <dbl> <int> <dbl>
1 India Asia 1952 37.4 1977 6.34e8
2 India Asia 1952 37.4 1982 7.08e8
3 India Asia 1952 37.4 1987 7.88e8
4 India Asia 1952 37.4 1992 8.72e8
5 India Asia 1952 37.4 1997 9.59e8
6 India Asia 1952 37.4 2002 1.03e9
7 India Asia 1952 37.4 2007 1.11e9
8 India Asia 1957 40.2 1977 6.34e8
9 India Asia 1957 40.2 1982 7.08e8
10 India Asia 1957 40.2 1987 7.88e8
# ... with 46 more rows, and 1 more variable:
# gdpPercap <dbl>