У меня возникают трудности при написании функции очистки с помощью пакета purrr
(впервые).Я хочу очистить несколько страниц, изменив два символа назначенного URL.Следующий код работает только для одного сезона данных футболистов.
page_func <- function(page) {
cat(".")
df <- read_html(paste0("http://www.voetbal.com/spelerslijst/ned-eredivisie-2017-2018/nach-name/",
page)) %>%
html_nodes("table") %>%
html_table() %>%
as.data.frame() %>%
as.tbl() %>%
select(Speler, Team, Geboren, Lengte, Positie) %>%
add_column(seizoen = "2017-2018")
}
raw_seizoen_17_18 <- map_df(1:11, page_func)
Вывод:
# A tibble: 541 x 6
Speler Team Geboren Lengte Positie seizoen
<chr> <chr> <chr> <chr> <chr> <chr>
1 Amir Absalem FC Groningen 19.06.1997 ??? VD 2017-2018
2 Asumah Abubakar Willem II 10.05.1997 183 cm AV 2017-2018
3 Ragnar Ache Sparta Rotterdam 28.07.1998 182 cm AV 2017-2018
4 Marouane Afaker SBV Excelsior 09.05.1999 ??? AV 2017-2018
5 Gor Agbaljan Heracles Almelo 25.04.1997 183 cm MV 2017-2018
6 Thomas Agyepong NAC Breda 10.10.1995 168 cm AV 2017-2018
Теперь я хочу очистить все сезоны от 1956-1957
до 2017-2018
в одномфункции, но я пока не могу понять, как манипулировать этими двумя переменными с помощью purrr
.
page_season_func <- function(seizoen, page) {
cat(".")
df <- read_html(paste0("http://www.voetbal.com/spelerslijst/ned-eredivisie-",
seizoen,
"/nach-name/",
page)) %>%
html_nodes("table") %>%
html_table() %>%
as.data.frame() %>%
as.tbl() %>%
select(Speler, Team, Geboren, Lengte, Positie) %>%
add_column(year = seizoen)
}