Pandas DataFrame删除空单元格行
在本文中,我们将介绍如何在Pandas DataFrame中删除包含空单元格的行。
阅读更多:Pandas 教程
什么是Pandas DataFrame
Pandas DataFrame是一个二维表格,其中数据以行和列的形式组织。每一列都有一个唯一标识符,称为列名。每一行都有一个唯一标识符,称为索引。每个单元格中存储一个数据项。
下面是一个具有3列和4行的DataFrame的示例:
Name Age Gender
0 Tom 24 Male
1 Amy 25 Female
2 Bob NaN Male
3 Cindy 27 Female
在上面的DataFrame中,第3行中有一个空值NaN。我们将在接下来的部分中介绍如何删除此行。
删除包含空单元格的行
可以使用dropna()
函数删除包含空单元格的行。默认情况下,它删除包含任何空单元格的行。您可以使用how
参数更改此行为。
下面是使用默认how
参数的示例:
df = df.dropna()
这将从DataFrame中删除包含任何空值的行。
可以通过将参数how='all'
传递给dropna()
函数来删除包含全部空单元格的行。
df = df.dropna(how='all')
上面的代码将从DataFrame中删除包含全部空值的行。
您还可以使用subset
参数指定要考虑的列。下面是使用subset
参数的示例:
df = df.dropna(subset=['Age'])
上面的代码将仅删除包含Age
列中空值的行。
替换空值
在某些情况下,将空值替换为其他值可能很有用。可以使用fillna()
函数替换空值。
下面是一个将空值替换为0的示例:
df = df.fillna(0)
上面的代码将所有空值替换为0。
您还可以将空单元格替换为指定列中的平均值。下面是使用mean()
函数的示例:
df['Age'] = df['Age'].fillna(df['Age'].mean())
上面的代码将Age
列中的所有空单元格替换为该列中非空单元格的平均值。
总结
在本文中,我们介绍了在Pandas DataFrame中删除包含空单元格的行的方法。我们还介绍了如何使用fillna()
函数将空单元格替换为其他值。使用这些技术可以清理数据并使其更容易分析和可视化。