複数のデータを空のdataframeから生成し、結合する方法[Python][Pandas]
以下に3つのdataframe生成し、結合するスクリプトを示す。
pd.concatを使うと、dataframeを縦連結することができる。あまり使わないと思うが、axisのオプションで横連結にすることも可能だ。
import pandas as pd df1 = pd.DataFrame() for i in range(5): tmp_series = pd.Series([i, i*i]) df1 = df1.append(tmp_series, ignore_index=True) df2 = pd.DataFrame() for i in range(5, 10): tmp_series = pd.Series([i, i*i]) df2 = df2.append(tmp_series, ignore_index=True) df3 = pd.DataFrame() for i in range(10, 15): tmp_series = pd.Series([i, i*i]) df3 = df3.append(tmp_series, ignore_index=True) df4 = pd.concat([df1, df2, df3]) df4.columns = ["i", "i^2"] df4 = df4.reset_index(drop=True) print(df4)
出力
i i^2 0 0.0 0.0 1 1.0 1.0 2 2.0 4.0 3 3.0 9.0 4 4.0 16.0 5 5.0 25.0 6 6.0 36.0 7 7.0 49.0 8 8.0 64.0 9 9.0 81.0 10 10.0 100.0 11 11.0 121.0 12 12.0 144.0 13 13.0 169.0 14 14.0 196.0
以下のように、各データフレームを生成するごとに、ラベル名を定義しても良い。
import pandas as pd df1 = pd.DataFrame() for i in range(5): tmp_series = pd.Series([i, i*i]) df1 = df1.append(tmp_series, ignore_index=True) df1.columns = ["i", "i^2"] df2 = pd.DataFrame() for i in range(5, 10): tmp_series = pd.Series([i, i*i]) df2 = df2.append(tmp_series, ignore_index=True) df2.columns = ["i", "i^2"] df3 = pd.DataFrame() for i in range(10, 15): tmp_series = pd.Series([i, i*i]) df3 = df3.append(tmp_series, ignore_index=True) df3.columns = ["i", "i^2"] df4 = df4.reset_index(drop=True) print(df4)
ディスカッション
コメント一覧
まだ、コメントがありません