我有一个数据框,目前正在创建一个新的数据框,其中包含列名称和空单元格数量,如下所示。
empty = pd.DataFrame(columns=['Column', 'NaNs'])
for (columnName, columnData) in dataset.items():
empty.loc[-1] = [columnName, columnData.isnull().any().sum()]
empty.index = empty.index + 1
empty = empty.sort_index()
这是一个简单概览表的 5 行。
我想知道是否有更好、更短的方法可以用
transpose
和 apply
或其他我目前无法弄清楚的东西来实现相同的目的。
您可以迭代
df.columns
并计算其中的空值数量,然后将其直接传递给 pd.DataFrame
:
import pandas as pd
df = pd.DataFrame({"a": [0, 1, None], "b": [0, None, 2], "c": [0, None, None]})
empty = pd.DataFrame(
{"Column": column, "NaNs": df[column].isnull().sum()} for column in df.columns
)
print(empty)
输出:
Column NaNs
0 a 1
1 b 1
2 c 2