LoginSignup
1
5

More than 3 years have passed since last update.

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

Posted at

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']

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

1
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
5