Python获取数组中某列非空数量
在数据处理过程中,经常需要对数组或者数据集中的某一列进行统计,其中一个常见的需求就是获取某一列的非空数量。本文将介绍如何使用Python语言来实现这一功能。
1. 使用NumPy实现
NumPy是Python中用于科学计算的重要库,它提供了丰富的数组操作函数。下面是使用NumPy来获取数组中某列非空数量的示例代码:
import numpy as np
# 创建一个二维数组
arr = np.array([[1, 2, 3],
[4, np.nan, 6],
[np.nan, 8, 9],
[10, 11, 12]])
# 获取第二列非空数量
non_empty_count = np.count_nonzero(~np.isnan(arr[:, 1]))
print("第二列非空数量为:", non_empty_count)
上述代码首先创建了一个二维数组arr
,然后使用np.count_nonzero(~np.isnan(arr[:, 1]))
来获取第二列非空的数量。输出为:
第二列非空数量为: 3
2. 使用Pandas实现
Pandas是Python中用于数据处理的强大库,它提供了丰富的数据结构和函数。下面是使用Pandas来获取数据集中某列非空数量的示例代码:
import pandas as pd
# 创建一个DataFrame
df = pd.DataFrame({'A': [1, 2, None, 4],
'B': [5, None, 7, 8],
'C': [None, 10, 11, 12]})
# 获取'B'列非空数量
non_empty_count = df['B'].count()
print("B列非空数量为:", non_empty_count)
上述代码首先创建了一个DataFramedf
,然后使用df['B'].count()
来获取’B’列非空的数量。输出为:
B列非空数量为: 3
3. 总结
本文介绍了如何使用NumPy和Pandas来获取数组或者数据集中某一列的非空数量。使用NumPy可以针对数组进行操作,而使用Pandas可以针对DataFrame进行操作,两者都非常方便实用。在实际数据处理中,根据不同的需求可以选择合适的工具来完成对数据列的统计工作。