【问题标题】:Is it possible to convert xml file into data frame in pandas? [duplicate]是否可以将 xml 文件转换为 pandas 中的数据框? [复制]
【发布时间】:2019-08-25 08:02:25
【问题描述】:

我有一个 xml 文件。我试图将此 xml 文件转换为数据框。但我做不到。

XML 输入

<root>
    <note>
      <to>Tove</to>
      <from>Jani</from>
      <heading>Reminder</heading>
      <body>Don't forget me this weekend!</body>
    </note>
    <note>
      <to>Tove</to>
      <from>Jani</from>
      <heading>Reminder</heading>
      <body>Don't forget me this weekend!</body>
    </note>
</root>

预期输出

id    to      from    heading    body
0    Tove    Jani    Reminder   Don't forget me this weekend!
1    Tove    Jani    Reminder   Don't forget me this weekend!

【问题讨论】:

    标签: python xml python-3.x pandas dataframe


    【解决方案1】:

    见下文

    import xml.etree.ElementTree as ET
    import pandas as pd
    
    xml = '''<root>
        <note>
          <to>Tove</to>
          <from>Jani</from>
          <heading>Reminder</heading>
          <body>Don't forget me this weekend!</body>
        </note>
        <note>
          <to>Tove</to>
          <from>Jani</from>
          <heading>Reminder</heading>
          <body>Don't forget me this weekend!</body>
        </note>
    </root>'''
    
    root = ET.fromstring(xml)
    data = []
    for note in root.findall('.//note'):
        data.append({e.tag: e.text for e in list(note)})
    df = pd.DataFrame(data)
    print(df)
    

    输出

                                body  from   heading    to
    0  Don't forget me this weekend!  Jani  Reminder  Tove
    1  Don't forget me this weekend!  Jani  Reminder  Tove
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-12-16
      • 2019-08-16
      • 1970-01-01
      • 1970-01-01
      • 2022-01-15
      • 2021-09-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多