介绍
在本实验中,我们将学习 Pandas DataFrame 类中的 count() 方法。count() 方法用于计算 DataFrame 中每列或每行的非空值数量。
虚拟机提示
虚拟机启动完成后,点击左上角切换到 Notebook 选项卡以访问 Jupyter Notebook 进行练习。
有时,你可能需要等待几秒钟,直到 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。
如果你在学习过程中遇到问题,可以随时向 Labby 寻求帮助。实验结束后请提供反馈,我们将及时为你解决问题。
导入必要的库
首先,让我们导入本实验所需的库:
import pandas as pd
import numpy as np
创建一个 DataFrame
接下来,让我们创建一个 DataFrame,用于本实验中的示例。我们的 DataFrame 将包含学生的信息,例如他们的姓名、学号、科目和分数。
df = pd.DataFrame([
['Abhishek', '101', 'Science', 90],
['Anurag', '102', None, 85]
], columns=['Name', 'Roll No', 'Subject', 'Marks'])
统计每列的非空值数量
要统计 DataFrame 中每列的非空值数量,我们可以使用不带任何参数的 count() 方法。这将返回一个 Series 对象,其中索引表示列名,值表示每列中非空值的数量。
column_counts = df.count()
print(column_counts)
输出:
Name 2
Roll No 2
Subject 1
Marks 2
dtype: int64
统计每行的非空值数量
要统计 DataFrame 中每行的非空值数量,我们可以使用 count() 方法并将 axis 参数设置为 1。这将返回一个 Series 对象,其中索引表示行号,值表示每行中非空值的数量。
row_counts = df.count(axis=1)
print(row_counts)
输出:
0 4
1 3
dtype: int64
统计每行的数值型非空值数量
如果我们只想统计每行中数值型的非空值数量,可以使用 count() 方法并将 numeric_only 参数设置为 True。这将仅统计具有数值型数据类型(如 float、int)的列,并排除非数值型数据类型(如 object)的列。
numeric_counts = df.count(numeric_only=True)
print(numeric_counts)
输出:
Roll No 2
Marks 2
dtype: int64
总结
恭喜!你已经成功完成了这个关于 Pandas DataFrame count() 方法的实验。在本实验中,你学习了如何使用 count() 方法统计 DataFrame 中每列或每行的非空值数量。你还学习了如何通过 numeric_only 参数仅统计数值型的非空值。继续练习并探索 Pandas 库的其他方法,以更熟练地使用 Python 进行数据分析和处理。祝你编程愉快!