python - len() 和 .nunique 与 pandas 数据帧的区别
问题描述
我已经定义了一个 Pandas 数据框,其中包含一个名为“emp_title”的列名。我想查看该特定列中唯一条目的总数。
我用了:
len(df['emp_title'].unique())
这给了我 173106 的价值
而当我使用时:
df['emp_title'].nunique()
它给了我一个 173105 的值,它应该是实际大小。
任何人都可以解释为什么我不应该将代码与 len() 函数一起使用。或者这里的数据集可能存在问题?
解决方案
这意味着存在一些缺失值,因为Series.nunique
默认情况下会删除缺失值。
因此,对于相同的输出,将默认参数更改dropna=True
为False
:
df['emp_title'].nunique(dropna=False)
推荐阅读
- spring-data-jpa - 如何使用 spring data jpa 中在 postgres 中创建的扩展
- python - 为什么 multiprocessing.Queue 有一个小的延迟,而(显然) multiprocessing.Pipe 没有?
- laravel - 如何在 Laravel 中手动设置主键值
- maven - Maven,排除所有类,但一个包下的一个
- html - 我希望我的按钮位于网页的特定部分
- excel - VBA 中的自动过滤器:AND & OR 运算符
- r - 两年月度数据的 STL 错误
- python - Numpy索引和新数组的创建
- jquery - 第二页不重定向到特定链接
- jquery - Jquery附加Html而不是布局