Как добавить новую строку в таблицу HTML - PullRequest
1 голос
/ 15 апреля 2020

Я собираю данные для исторических результатов гонки собак для проекта Uni. Как добавить столбец в таблицу с элементами из другой таблицы? В частности, перед ним таблица, состоящая из столбцов 3 и 4, поэтому добавьте эту информацию, чтобы создать 13-й и 14-й столбцы в таблице ниже, и заполняйте все строки этой информацией. [Row from different table[1]

Вот код, который у меня есть.

library(xml2) 
library(rvest) 
web<- read_html('https://www.thegreyhoundrecorder.com.au/results/bendigo/61001')
tables<- html_nodes(web, 'table') 
tab1<- html_table(tables, fill = TRUE)

1 Ответ

0 голосов
/ 15 апреля 2020

Сначала мы можем удалить элементы списка, которые имеют 1 строку и 2 столбца.

Мы делаем это, используя Filter.

remain_tab <- Filter(function(x) !(nrow(x) == 1 & ncol(x) == 2), tab1)
#Probably it is simpler to just remove 1st 12 elements if you know 
#they are the problem and don't want to include in the final dataset.
#remain_tab <- tab1[-c(1:12)]

и затем с помощью Map мы меняем альтернативные данные.

remain_tab[c(FALSE, TRUE)] <- Map(function(x, y) 
                       {y[paste0('X', c(13, 14))] <- x[c(3, 4)];y}, 
                       remain_tab[c(TRUE, FALSE)], remain_tab[c(FALSE, TRUE)])
...