【问题标题】:Error in (function (..., row.names = NULL, check.rows = FALSE, check.names = TRUE, : arguments imply differing number of rows: 17, 3错误(函数(...,row.names = NULL,check.rows = FALSE,check.names = TRUE,:参数暗示不同的行数:17、3
【发布时间】:2021-04-24 03:41:27
【问题描述】:

我正在尝试将网站中的表格转换为可以在 R 中读取的表格。

url <- "https://www.pro-football-reference.com/teams/cle/2020.htm#all_games"

pfr_raw <- url %>%
     read_html() %>%
     html_table() %>%
     as.data.frame()

但是当我这样做时,它会抛出这个错误 -> `错误(函数(...,row.names = NULL,check.rows = FALSE,check.names = TRUE,: 参数暗示不同的行数:17, 3'

问题是,如果我使用链接,但 2019 而不是 2020 它可以工作。我该如何解决这个问题? 谢谢你

【问题讨论】:

    标签: r web-scraping data-science


    【解决方案1】:

    它是来自html_tabledata.framelist,并非所有列都存在于所有data.frame 中。所以,使用bind_rows可能会更好

    library(dplyr)
    library(xml2)
    library(rvest
    
    out <- url %>%
     read_html() %>%
     html_table() %>% 
     bind_rows
    
    dim(out)
    #[1] 31 60
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-16
      • 1970-01-01
      • 2021-01-01
      相关资源
      最近更新 更多