Как проверить, пуст ли набор узлов XML в R?
Я пишу функцию, которая перебирает узлы XML в R; для этого я искал глагол, который подтверждает или отрицает наличие пустого набора XML-узлов (что-то вроде isEmptyNodeSet
).
Другими словами, функция, которая возвращает TRUE
если происходит случай, подобный следующему:
library(magrittr)
library(rvest)
#> Loading required package: xml2
library(xml2)
"https://www.admin.ch/ch/d/gg/pc/ind2010.html" %>%
read_html() %>%
html_nodes("a.adminCHlink, div#spalteContentPlus h2 ~ ul") %>%
.[[1]] %>%
html_nodes("strong")
#> {xml_nodeset (0)}
Создано в 2019-01-12 пакетом представлением (v0.2.1)
Заранее большое спасибо (и извините, если ответ очевиден, я новичок в XML)!
1 ответ
Либо использовать is_empty <- function(x) if(length(x) == 0) TRUE else FALSE
(спасибо @Chase).
Или использовать rlang::is_empty()
или же purrr::is_empty()
соответственно, что делает точно так же.
Код тогда становится:
library(magrittr)
library(rvest)
#> Loading required package: xml2
library(xml2)
"https://www.admin.ch/ch/d/gg/pc/ind2010.html" %>%
read_html() %>%
html_nodes("a.adminCHlink, div#spalteContentPlus h2 ~ ul") %>%
.[[1]] %>%
html_nodes("strong") %>%
rlang::is_empty()
#> [1] TRUE