Get startedGet started for free

Turn a table into a data frame with html_table()

If a table has a header row (with th elements) and no gaps, scraping it is straightforward, as with the following table (having ID "clean"):

Mountain Height First ascent Country
Mount Everest 8848 1953 Nepal, China
...

Here's the same table (having ID "dirty") without a designated header row and a missing cell in the first row:

Mountain Height First ascent Country
Mount Everest 8848 1953
...

For such cases, html_table() has an extra argument you can use to correctly parse the table, as shown in the video. Missing cells are automatically recognized and replaced with NA values.

Both tables are contained within the mountains_html document.

This exercise is part of the course

Web Scraping in R

View Course

Hands-on interactive exercise

Have a go at this exercise by completing this sample code.

# Extract the "clean" table into a data frame 
mountains <- mountains_html %>% 
  html_element("table#clean") %>% 
  ___

mountains
Edit and Run Code