python - 在 Pandas 数据框中获取不同值的最有效方法是什么?

标签 python pandas dataframe unique distinct-values

我有一个数据框,如下所示。

    0   1   2
0   A   B   C
1   B   C   B
2   B   D   E
3   C   E   E
4   B   F   A
我需要获取 来自整个数据帧的唯一值计数 , 不是按列唯一值。
在上面的数据框中,唯一值是 A、B、C、D、E、F。
所以,我需要的结果是 6 .
我正在使用 Pandas 挤压、拉威尔和 nunique 函数来实现这一点,它将整个数据帧转换为一个系列。
pd.Series(df.squeeze().values.ravel()).nunique(dropna=True)
请让我知道是否有更好的方法来实现这一目标。

最佳答案

使用 NumPy为此,如:

import numpy as np
print(np.unique(df.values).shape[0])

关于python - 在 Pandas 数据框中获取不同值的最有效方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63336844/

相关文章:

javascript - 机器人框架 : Click Element using Execute JavaScript

Python2 Pygame 安装问题 OS X

python - Pandas 列随时间的变化

python - Pandas DataFrame 排序忽略大小写

python - 如何使用 Python/pandas 获取带有行摘要的分钟/小时财务数据?

python - 使用 Python etree 更新 XML 元素和属性值

python - 模板语法错误: Could not parse the remainder

python - 选择性分组依据,np.where Pandas/Python 查询

python - 当省略 x 或 y 参数时,swarmplot 无法识别色调

python - 根据值从一组列中选择一个值并使用该值创建新列?