このページでは、Pandas で作成した、もしくは、読み込んだデータフレームに行や列 (カラム) を追加する方法について紹介します。
行を追加する
>>> import pandas as pd
>>> import numpy as np
>>> # データフレーム df を作成
>>> df = pd.DataFrame([[1, 2], [3, 4]], columns=list('AB'))
>>> df
A B
0 1 2
1 3 4
>>> # データフレーム df2 を作成
>>> df2 = pd.DataFrame([[5, 6]], columns=list('AB'))
>>> df2
A B
0 5 6
>>> # データフレーム df と df2 を結合
>>> df.append(df2)
A B
0 1 2
1 3 4
0 5 6
複数行の追加は以下のようにして行います。
>>> # データフレーム df3 を作成
>>> df3 = pd.DataFrame([[5, 6], [7, 8]], columns=list('AB'))
>>> df3
A B
0 5 6
1 7 8
>>> # データフレーム df と df3 を結合
>>> df.append(df3)
A B
0 1 2
1 3 4
0 5 6
1 7 8
上記の例では、元の行番号のまま追加が行われますが、ignore_index=True パラメータを指定することで、新たな行番号を割り当てることができます。
>>> # データフレーム df と df3 を結合 (元の行番号を無視) >>> df.append(df3, ignore_index=True) A B 0 1 2 1 3 4 2 5 6 3 7 8
列 (カラム) を追加する
作成済みのデータフレームに新しい列名を追加することで、列の追加ができます。
追加するデータは Python のリストや Numpy の行列 (Array) を指定できます。
>>> # データフレーム df を作成
>>> df = pd.DataFrame([["0001", "John"], ["0002", "Lily"]], columns=['id', 'name'])
>>> df
id name
0 0001 John
1 0002 Lily
>>> # 列 "job" を追加
>>> df['job'] = ["Engineer", "Sales"]
>>> df
id name job
0 0001 John Engineer
1 0002 Lily Sales
>>>
>>> # 列 "age" を追加 (Numpy Array を追加)
>>> df['age'] = np.array([35, 25])
>>> df
id name job age
0 0001 John Engineer 35
1 0002 Lily Sales 25