Help us understand the problem. What is going on with this article?

[Python]listをPandasに変換[Pandas]

XMLをParseして取得したlistをPandas DataFrameに変換を試みたのですが、XMLによって要素数が異なるとエラーが出てしまったので対処方法を記載しておきます。

失敗例

# listにはXMLによって異なる数のデータが格納
Date = []
SerialNumver = []
TrendDate = []

df = pd.DataFrame({'Date': Date,
                   'SerialNumber': SerialNumber,
                   'TrendDate': TrendDate})

エラーコード

ValueError: arrays must all be same length

listの要素をカウントしても同じ数値が出てくるので、八方塞がりでした。

成功例

DataFrameの記述を下記のように変更しました。

# listにはXMLによって異なる数のデータが格納
Date = []
SerialNumver = []
TrendDate = []

#listを1つにまとめる
listData = [Date, SerialNumber, TrendDate]

# DataFrameに変換。.Tは行と列を入れ替え
df = pd.DataFrame(listData).T

# カラム名を追加
df.columns = ['Date', 'SerialNumber', 'TrendDate']

何が原因だったかよく分かりませんが、これでエラーなく処理が可能になりました。

S10CF
資格:臨床工学技士 臨床ME専門認定士 呼吸療法認定士 透析技術認定士 体外循環技術認定士 不整脈治療専門臨床工学技士 心血管インターベンション技師 医療機器情報コミュニケータ  受賞歴:FileMaker選手権2014 メディカル賞 第64回日本不整脈心電学会メディカルプロフェッショナル優秀演題銀賞 第66回日本不整脈心電学会メディカルプロフェッショナル最優秀演題賞
https://www.youtube.com/channel/UCFhUQsmkRIL7GCW9wIqCT0A
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした