Pythonで既存のPandasにおけるDataFrameに辞書のリストを追加してみます。もしくは、Pandas Seriesからの値を追加してみます。
■Python
今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)
■DataFrameを作成する
既存のPandasにおけるDataFrameに辞書のリストを追加する前に、DataFrameを作成します。
■コード
import pandas as pd df = pd.DataFrame({ '名前':['田中','岡谷','森本','杉岡','吉村'], '出身':['富山','石川','新潟','東京','埼玉'], '年齢':[25,32,29,21,40] }) print(df)
インポートでPandasモジュールを呼び出します。dfという変数を作成し、その中でpd.DataFrame()を使用し、「名前」、「出身」、「年齢」の3つの列と値を記述し、DataFrameを作成します。
■実行
このスクリプトを実行すると、作成したDataFrameが出力されます。
■既存のPandasにおけるDataFrameに辞書のリストを追加する
DataFrameの用意ができましたので、DataFrameに辞書のリストを追加するスクリプトを書いていきます。
■コード
import pandas as pd df = pd.DataFrame({ '名前':['田中','岡谷','森本','杉岡','吉村'], '出身':['富山','石川','新潟','東京','埼玉'], '年齢':[25,32,29,21,40] }) print(df) dictionary_test = [{'名前':'山内','出身':'沖縄','年齢':23}, {'名前':'柄本','出身':'大阪','年齢':20}] print("\n") print(dictionary_test) df = df.append(dictionary_test,ignore_index=True,sort=False) print("\n") print(df)
DataFrameに辞書のリストを追加する場合は、DataFrameを作成した後に、dictionary_testという辞書を作成し、その中に既存のDataFrameに追加するキー(列名)と値(各列の要素)を記述します。
記述後、DataFrameを格納しているdfという変数に対して、append()関数を使用します。括弧内の第1の引数には、dictionary_testを指定し、第2の引数では、「ignore_index=True」と記述し、新しく行番号を割り当てます。第3の引数では、「sort=False」と記述し、列をソートしないよう(一定の条件に従って並び替えない)に指定します。そして、格納します。これで、DataFrameに辞書のリストを追加することができます。
最後に、print関数でdfという変数の情報を出力してみます。
■実行
このスクリプトを「df_list_add_2.py」という名前で保存し、コマンドプロンプトから実行してみます。
実行してみると、今回作成した辞書を既存のDataFrameに追加し、出力できました。
■PandasのSeriesを既存のDataFrameに追加する
では、次にPandasのSeriesを既存のDataFrameに追加してみます。
■コード
import pandas as pd df = pd.DataFrame({ '名前':['田中','岡谷','森本','杉岡','吉村'], '出身':['富山','石川','新潟','東京','埼玉'], '年齢':[25,32,29,21,40] }) print(df) series_test = pd.Series(['堀口','北海道',27],index=['名前','出身','年齢']) print("\n") print(series_test) df = df.append(series_test,ignore_index=True,sort=False) print("\n") print(df)
PandasのSeriesを既存のDataFrameに追加する場合は、DataFrameに辞書のリストを追加する場合とさほど変わりありませんが、series_testという変数を作成し、その中でpd.Series()関数を使用し、Seriesを作成します。括弧内には既存のDataFrameに追加する値(各列の要素)と、「index=」と記述し、値に割り当てるindexの名前(列名)を指定します。指定後、格納。
格納後、DataFrameに辞書のリストを追加する場合と同じように、append()関数を使用し、既存のDataFrameに、作成したSeriesを追加します。
追加後、print関数でdfという変数の情報を出力してみます。
■実行
このスクリプトを「df_list_add_3.py」という名前で保存し、コマンドプロンプトから実行してみます。
実行してみると、既存のDataFrameに、作成したSeriesを追加し、出力することができました。
コメント