ホームページ >バックエンド開発 >Python チュートリアル >XML ファイルを 6 つの特定の列を持つ Pandas DataFrame に変換する方法

XML ファイルを 6 つの特定の列を持つ Pandas DataFrame に変換する方法

Susan Sarandon
Susan Sarandonオリジナル
2024-11-16 15:09:03729ブラウズ

How to Convert an XML File to a Pandas DataFrame with Six Specific Columns?

XML を Pandas DataFrame に簡単に変換する

問題:

次の XML ファイルが与えられたとします。特定の構造の場合、タスクは、それを 6 つの列 (「キー」、「タイプ」、「言語」、「機能」、「ウェブ」、および「データ」) で構成された、すっきりと整理されたパンダ データフレームに変換することです。

解決策:

この変換を実行する最も効率的な方法は、Python の標準 'xml' ライブラリを利用することです。このライブラリは、XML データを解析して操作する簡単な方法を提供します。続行方法は次のとおりです:

  1. XML の解析: 「xml」ライブラリの「ElementTree」クラスを使用して、XML ファイルを ElementTree オブジェクトに解析します。
  2. 著者の反復: 解析された XML から、各「著者」タグを反復します。
  3. ドキュメント データの抽出: 各「著者」について、そのタグを反復します。
  4. 各ドキュメントの辞書を作成: テキスト コンテンツを含む関連データを含む各 'ドキュメント' の辞書を作成します。
  5. 辞書を DataFrame に変換します: 最後に、辞書のリストを pandas DataFrame に変換します。

コード スニペット:

import pandas as pd
import xml.etree.ElementTree as ET

xml_data = "<author..>...</author>" # Replace with your XML string

etree = ET.parse(xml_data)

def iter_docs(author):
    for doc in author.iter('document'):
        doc_dict = author.attrib.copy()
        doc_dict.update(doc.attrib)
        doc_dict['data'] = doc.text
        yield doc_dict

doc_df = pd.DataFrame(list(iter_docs(etree.getroot())))

print(doc_df)

このメソッドにより、XML データが目的の形式を満たす DataFrame に体系的かつ効率的に変換されます。

以上がXML ファイルを 6 つの特定の列を持つ Pandas DataFrame に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。