XML 데이터를 data.frame으로 변환하는 간단하고 효율적인 방법을 찾고 있습니다 (그러나 모든 요소가 아님).XML을 데이터 프레임으로 변환
나는이 파일이 : 나는 xpathSApply
을 사용 http://www-sop.inria.fr/members/Philippe.Poulard/projet/2013/entries_hotels.xml
을하지만,이 null 요소를 보존하지 않기 때문에 그 나쁜입니다. 파일에서 일부 위도가 비어 있지만 xpathSApply
으로 무시됩니다. 비어있는 위도 요소가있는 호텔을 무시할 수 있습니다.
xmlToList
함수를 찾았습니다. 동일한 구조 (데이터 프레임에 많은 NULL 값이없는 것을 피하기 때문에)가 좋기 때문에 XML을 사용하는 것이 좋습니다.
하지만 지금은이 문제가 :
내가 요소의 소모적 인 목록이 목록에서 데이터 프레임을 생성하고 NULL을 요소를 유지하려면, 내가 어떻게 할 수 있습니까? 내가 이런 짓을하지만, 널 (NULL)이 내 벡터에 보관되지 않습니다
library(XML)
hotels <- "http://www-sop.inria.fr/members/Philippe.Poulard/projet/2013/entries_hotels.xml"
list <- xmlToList(hotels)
latitudes.hotels <- c()
for(element in list) {latitudes.hotels <- c(latitudes.hotels, element$latitude)}
그리고 내 두 번째 문제는 내가 내 목록과 직접 작업 할 경우, 문제가 모든 이름이 SAMES가 있다는 점이다 : "항목 ".
그런 다음 Id가 x와 동일한 항목 (예 : which(list$entry$ID == x)
)에 액세스 할 수 있는지 궁금합니다.
나는
ids.hotels <- c()
for(element in list) {ids.hotels <- c(ids.hotels, element$ID)}
list[[which(ids.hotels == x)]]
위보다 벡터의 동일한 유형으로 그것을 할 수 있습니다하지만 난 그것을 할 수있는 더 좋은 방법이 있다고 생각하고, 하나 개의 ID 요소 내 XML 파일에 빈 상태 (empty)의 경우 잘못입니다.
그러나 당신이 기본 함수를 사용하여 요소를 추출하여 누락 된 위도/경도를 유지할 수, 나는 XML 패키지에 익숙하지 않다 어떤 도움
감사합니다. 매우 빠르고 효율적입니다! –