Pandas DataFrame で空の列を作成する方法

Suraj Joshi 2023年1月30日 2020年6月13日
  1. 単純な割り当てで空の列 Pandas を作成する
  2. Pandas に空の列を追加するための pandas.DataFrame.reindex() メソッド
  3. pandas.DataFrame.assign() は Pandas DataFrame に空の列を追加する
  4. pandas.DataFrame.insert() は DataFrame に空の列を追加する
Pandas DataFrame で空の列を作成する方法

DataFrame オブジェクトの reindex()assign()insert() メソッドを使用して、Pandas の DataFrame に空の列を追加できます。空の値を DataFrame の列に直接割り当てて、Pandas に空の列を作成することもできます。

単純な割り当てで空の列 Pandas を作成する

DataFrame の列を空の文字列、NaN 値、または空の Pandas Series に直接割り当てて、Pandas に空の列を作成できます。

import pandas as pd
import numpy as np

dates=['April-20', 'April-21', 'April-22', 'April-23','April-24','April-25']
income=[10,20,10,15,10,12]
expenses=[3,8,4,5,6,10]

df=pd.DataFrame({"Date":dates,
                "Income":income,
                "Expenses":expenses})

df["Empty_1"] = ""
df["Empty_2"] = np.nan
df['Empty_3'] = pd.Series() 

print(df)

出力:

       Date  Income  Expenses Empty_1  Empty_2  Empty_3
0  April-20      10         3              NaN      NaN
1  April-21      20         8              NaN      NaN
2  April-22      10         4              NaN      NaN
3  April-23      15         5              NaN      NaN
4  April-24      10         6              NaN      NaN
5  April-25      12        10              NaN      NaN

df に 3つの空の列を作成します。列 Empty_1 には空の文字列が割り当てられ、Empty_2 には NaN 値が割り当てられ、Empty_3 には空の Pandas Series が割り当てられ、結果として Empty_3 全体の NaN 値も生成されますカラム。

Pandas に空の列を追加するための pandas.DataFrame.reindex() メソッド

pandas.DataFrame.reindex() メソッドを使用して、複数の空の列を Pandas の DataFrame。

import pandas as pd
import numpy as np

dates=['April-20', 'April-21', 'April-22', 'April-23','April-24','April-25']
income=[10,20,10,15,10,12]
expenses=[3,8,4,5,6,10]

df=pd.DataFrame({"Date":dates,
                "Income":income,
                "Expenses":expenses})

column_names=["Empty_1","Empty_2",'Empty_3']

df = df.reindex(columns = column_names)
print(df)

出力:

   Empty_1  Empty_2  Empty_3
0      NaN      NaN      NaN
1      NaN      NaN      NaN
2      NaN      NaN      NaN
3      NaN      NaN      NaN
4      NaN      NaN      NaN
5      NaN      NaN      NaN

コードは、すべての古い情報が失われている間、すべての NaN 値で df に新しい列 Empty_1Empty_2Empty_3 を作成します。

イニシャルを保持しながら複数の新しい列を追加するには、次のようにコードを記述します。

import pandas as pd
import numpy as np

dates=['April-20', 'April-21', 'April-22', 'April-23','April-24','April-25']
income=[10,20,10,15,10,12]
expenses=[3,8,4,5,6,10]

df=pd.DataFrame({"Date":dates,
                "Income":income,
                "Expenses":expenses})

df = df.reindex(columns = df.columns.tolist() + ["Empty_1","Empty_2",'Empty_3'])
print(df)

出力:

       Date  Income  Expenses  Empty_1  Empty_2  Empty_3
0  April-20      10         3      NaN      NaN      NaN
1  April-21      20         8      NaN      NaN      NaN
2  April-22      10         4      NaN      NaN      NaN
3  April-23      15         5      NaN      NaN      NaN
4  April-24      10         6      NaN      NaN      NaN
5  April-25      12        10      NaN      NaN      NaN

これにより、空の列 Empty_1Empty_2Empty_3df に追加され、初期情報が保持されます。

pandas.DataFrame.assign() は Pandas DataFrame に空の列を追加する

pandas.DataFrame.assign() メソッドを使用して、Pandas の DataFrame に空の列を追加できます。

import pandas as pd
import numpy as np

dates=['April-20', 'April-21', 'April-22', 'April-23','April-24','April-25']
income=[10,20,10,15,10,12]
expenses=[3,8,4,5,6,10]

df=pd.DataFrame({"Date":dates,
                "Income":income,
                "Expenses":expenses})

df=df.assign(Empty_1="",Empty_2=np.nan)
print(df)

出力:

       Date  Income  Expenses Empty_1  Empty_2
0  April-20      10         3              NaN
1  April-21      20         8              NaN
2  April-22      10         4              NaN
3  April-23      15         5              NaN
4  April-24      10         6              NaN
5  April-25      12        10              NaN

df に NaN 値のみを含む Empty_1 および Empty_2 という名前の空の列を作成します。

pandas.DataFrame.insert() は DataFrame に空の列を追加する

pandas.DataFrame.insert() を使用すると、DataFrame に列を挿入できます指定された場所。このメソッドを使用して、DataFrame に空の列を追加できます。

構文:

DataFrame.insert(loc, column, value, allow_duplicates=False)

デフォルトの値 value で、loc の位置に column という名前の新しい列を作成します。allow_duplicates = False は、dataFrame に column という名前の列が 1つだけ存在することを確認します。空の文字列または NaN 値を値パラメーターとして渡す場合、空の列を DataFrame に追加できます。

import pandas as pd
import numpy as np

dates=['April-20', 'April-21', 'April-22', 'April-23','April-24','April-25']
income=[10,20,10,15,10,12]
expenses=[3,8,4,5,6,10]

df=pd.DataFrame({"Date":dates,
                "Income":income,
                "Expenses":expenses})
df.insert(3, "Empty_1", "") 
df.insert(4, "Empty_2", np.nan)
print(df)

出力:

       Date  Income  Expenses Empty_1  Empty_2
0  April-20      10         3              NaN
1  April-21      20         8              NaN
2  April-22      10         4              NaN
3  April-23      15         5              NaN
4  April-24      10         6              NaN
5  April-25      12        10              NaN

これは、dfEmpty_1 列を作成し、すべての空の値をインデックス 3 に、Empty_2 をインデックス 4 にすべての NaN 値で作成します。

Author: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

関連記事 - Pandas DataFrame Column

関連記事 - Pandas DataFrame