Ich bin sicher, dass diese Frage viele Male beantwortet wurde ... aber die Daten, die ich habe, denke ich ist ein bisschen einzigartig. Das Folgende ist ein Teil meines Datensatzes.Parsing xml to Dataframe mit R
<?xml version="1.0" encoding="UTF-8"?>
<IOTModellerLog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" DeviceID="7430180" ClientID="12324" FileCreationDate="2017-03-01T22:40:03" FileVersion="2" EventClassID="65535" IOTLogCreationDate="2017-03-01T12:29:54" SampleID="1" xsi:noNamespaceSchemaLocation="/opt/nds/ams_proxy/webapps/ams_proxy/WEB-INF/amsXmlSchema.xsd">
<Event EventTime="2017-02-27T18:33:58">
<IOTEvent State="PowerOn" />
</Event>
<Event EventTime="2017-02-28T08:59:03">
<DataEvent>
<Model>1</Model>
<DataType>1</DataType>
<DataValue>0301</DataValue>
</DataEvent>
</Event>
<Event EventTime="2017-02-28T08:59:13">
<DataEvent>
<Model>1</Model>
<DataType>1</DataType>
<DataValue>0401</DataValue>
</DataEvent>
</Event>
</IOTModellerLog>
Ich versuche, dies in einen Datenrahmen mit ersten Spalte die EventTime
sein zu konvertieren. Das erwartete Format ist wie folgt:
EventTime Model DataType DataValue
2017-02-28T08:59:13 1 1 0401
2017-02-28T08:59:15 1 5 070707
ich folgendes versucht:
result <- xmlParse("demoxml.xml")
XML:::xmlAttrsToDataFrame(result["//Event"]) #This just prints only the time
xmlToDataFrame(nodes=getNodeSet(result,"//DataEvent"))[c("Model","DataType","DataValue")]
Ich bin nicht sicher, wie bekomme ich die Dataevent-Werte zusammen mit dem Eventtime und nehmen es in einem data.frame .
Kann jemand helfen?
wow arbeiten kann .... vielen Dank! Millionen .... das ist sicher etwas womit ich arbeiten kann .... – Apricot