當試圖解析一個html頁面時,我們可以得到NA值。因此,當我們嘗試使用列表中的數據構建數據框時,缺少值將無法實現。如何在解析html頁面來替換數據框時替換NA值?
有什麼簡單的方法可以成功。請看下面的例子:
library(rvest)
library(RCurl)
library(XML)
pg <- getURL("https://agences.axa.fr/ile-de-france/paris/paris-19e-75019")
page = htmlTreeParse(pg,useInternal = TRUE,encoding="UTF-8")
unlist(xpathApply(page,'//b[@class="Name"]',xmlValue))
data.frame(noms = unlist(xpathApply(page,'//b[@class="Name"]',xmlValue)),
rue = unlist(xpathApply(page,'//span[@class="street-address"]',xmlValue)))
因爲您使用'html_node'而不是'html_nodes'。此外,RCurl在這裏是不必要的;你可以直接將URL傳遞給'read_html'。 – alistaire
謝謝@alistaire,我修改了我的問題,因爲最初的一個很愚蠢。對於這個問題,我已經問過類似的問題:http://stackoverflow.com/questions/42588717/how-to-return-na-when-nothing-is-found-in-an-xpath,根據您對其他問題的回答,您可以成功找到解決方案。 –
更好的問題。但是,您應該顯示加載XML,以獲得可重複性。 – alistaire