Skip to main content
 首页 » 编程设计

python之计算整个 DataFrame 中值的数量

2025年05月04日10arxive

我目前有一个包含 50 列和大约 50000 行的 DataFrame。我试图找到一个值(例如 2)出现在整个 DataFrame 中的总次数。

DataFrame 只包含 0 到 7 之间的值。我可以使用这个为单个列执行代码:

print(df['col1'].value_counts()) 

然后我尝试创建一个 for 循环,如下所示:

for cols in df: 
    print(df[cols].value_counts()) 

这行得通,但它会将其作为每列的单独结果打印出来。

我没有按列拆分结果,而是尝试获得如下所示的结果,但对于 DataFrame 中的所有列组合而不仅仅是 1 列。

val    no. 
7.0    165 
3.0    127 
5.0     118 
6.0     112 
2.0      98 
4.0      88 
1.0      64 
0.0      21 
Name: col1, dtype: int64 

如有任何帮助,我们将不胜感激!

请您参考如下方法:

或者对于一个特定的值:

(df.values == 2).sum() 

或对所有:

np.unique(df.values, return_counts=True)