我有一个数据框,如下所示。
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/