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

Suraj Joshi 2023年1月30日
  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 値で作成します。

著者: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

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

LinkedIn

関連記事 - Pandas DataFrame Column

関連記事 - Pandas DataFrame