PythonのPandasで空のDataFrameを0埋めする方法

Python,イメージ

AI実装検定のご案内

PythonのPandasを使って、空のDataFrameを作成し、それを0で埋める方法について詳しく解説します。

以下の内容は、初学者にも理解できるように、段階的に説明していきます。

目次

空のDataFrameを作成する基本

import pandas as pd

# 空のDataFrameを作成
df = pd.DataFrame()
print(df)

出力は以下の通りで、何のデータも持たないDataFrameになります。

Empty DataFrame
Columns: []
Index: []

行数や列数を指定して0埋めする

完全に0で埋まったDataFrameを作りたい場合、numpy.zeros()DataFrameのコンストラクタを使うと便利です。

例:3行×4列の0埋めDataFrameを作成

import pandas as pd
import numpy as np

# 行数3、列数4の0埋めDataFrame
df = pd.DataFrame(np.zeros((3, 4)))
print(df)

出力

     0    1    2    3
0  0.0  0.0  0.0  0.0
1  0.0  0.0  0.0  0.0
2  0.0  0.0  0.0  0.0

列名やインデックスを指定して0埋めする方法

列名・インデックスをカスタマイズしたいとき

columns = ['A', 'B', 'C']
index = ['row1', 'row2', 'row3']

df = pd.DataFrame(0, index=index, columns=columns)
print(df)

出力

       A  B  C
row1  0  0  0
row2  0  0  0
row3  0  0  0

この方法では、初期値としてすべてのセルに0が設定されます。

整数の0を使っているため、整数型のDataFrameになります(必要ならdtype指定も可能)。

応用:空のDataFrameにあとから0で埋める

例えば、空のDataFrameを作成したあと、特定のカラム構造だけ定義してあとから0を埋めたいという場合もあります。

まずカラムだけ定義し、あとから行を追加&0埋め

columns = ['A', 'B', 'C']
df = pd.DataFrame(columns=columns)

# 任意の行数を追加して0で埋める
df = pd.DataFrame(0, index=range(5), columns=columns)
print(df)

出力

   A  B  C
0  0  0  0
1  0  0  0
2  0  0  0
3  0  0  0
4  0  0  0

注意点

  • pd.DataFrame()だけでは空のままなので、ゼロで埋めたい場合は必ずデータ構造(shapeや列)を指定する。
  • np.zeros()はfloat型を生成するため、必要に応じてdtype=intなどで調整可能。
# int型の0で埋める
df = pd.DataFrame(np.zeros((3, 3), dtype=int), columns=['A', 'B', 'C'])
print(df)

補足:既存のDataFrameに0を埋めたい場合

欠損値(NaN)を0で埋めるときは以下のようにします。

df.fillna(0, inplace=True)
print(df)

まとめ

目的方法
空のDataFramepd.DataFrame()
行列を指定して0で埋めるpd.DataFrame(np.zeros((rows, cols)))
列名とインデックス付きで0埋めpd.DataFrame(0, index=..., columns=...)
欠損値を0で埋めるdf.fillna(0)

以上、PythonのPandasで空のDataFrameを0埋めする方法についてでした。

最後までお読みいただき、ありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次