当前位置: 首页 > news >正文

【Pandas】pandas Series nunique

Pandas2.2 Series

Computations descriptive stats

方法描述
Series.abs()用于计算 Series 中每个元素的绝对值
Series.all()用于检查 Series 中的所有元素是否都为 True 或非零值(对于数值型数据)
Series.any()用于检查 Series 中是否至少有一个元素为 True 或非零值(对于数值型数据)
Series.autocorr()用于计算 Series 的自相关系数
Series.between()用于检查 Series 中的每个元素是否在指定的两个值之间(包括边界值)
Series.clip()用于将 Series 中的元素限制在指定的上下限之间
Series.corr()用于计算两个 Series 之间的相关系数
Series.count()用于计算 Series 中非 NA/null 值的数量
Series.cov(other[, min_periods, ddof])用于计算两个 Series 之间的协方差
Series.cummax([axis, skipna])用于计算 Series 中元素的累积最大值
Series.cummin([axis, skipna])用于计算 Series 中元素的累积最小值
Series.cumprod([axis, skipna])用于计算 Series 中元素的累积乘积
Series.cumsum([axis, skipna])用于计算 Series 中元素的累积和
Series.describe([percentiles, include, exclude])用于生成 Series 对象的描述性统计信息的方法
Series.diff([periods])用于计算 Series 中元素与前一个元素之间差值的方法
Series.factorize([sort, use_na_sentinel])用于将 Series 中的唯一值编码为从 0 开始的整数索引的方法
Series.kurt([axis, skipna, numeric_only])用于计算 Series 中数据的峰度(kurtosis)
Series.max([axis, skipna, numeric_only])用于计算 Series 中所有元素的最大值
Series.mean([axis, skipna, numeric_only])用于计算 Series 中所有元素的算术平均值
Series.median([axis, skipna, numeric_only])用于计算 Series 对象中位数的函数
Series.min([axis, skipna, numeric_only])用于计算 Series 对象最小值的函数
Series.mode([dropna])用于计算 Series 对象中最常出现的值(众数)的函数
Series.nlargest([n, keep])用于获取 Series 对象中最大的 n 个值的函数
Series.nsmallest([n, keep])用于获取 Series 对象中最小的 n 个值的函数
Series.pct_change([periods, fill_method, …])用于计算 Series 对象中元素与前一个元素之间百分比变化的方法
Series.prod([axis, skipna, numeric_only, …])用于计算 Series 对象中所有元素乘积的函数
Series.quantile([q, interpolation])用于计算 Series 对象的分位数(quantiles)的方法
Series.rank([axis, method, numeric_only, …])用于计算 Series 对象中每个元素的排名的方法
Series.sem([axis, skipna, ddof, numeric_only])用于计算 Series 对象的标准误差(Standard Error of the Mean, SEM)的方法
Series.skew([axis, skipna, numeric_only])用于计算 Series 对象的偏度(skewness)的方法
Series.std([axis, skipna, ddof, numeric_only])用于计算 Series 对象的标准差(Standard Deviation, STD)的方法
Series.sum([axis, skipna, numeric_only, …])用于计算 Series 中元素的总和
Series.var([axis, skipna, ddof, numeric_only])用于计算 Series 中元素的样本方差
Series.kurtosis([axis, skipna, numeric_only])用于计算 Series 中元素的峰度
Series.unique()用于返回 Series 中的唯一值
Series.nunique([dropna])用于计算 Series 中唯一值的数量

pandas.Series.nunique

pandas.Series.nunique() 方法用于计算 Series 中唯一值的数量。该方法可以忽略或包含 NaN 值,具体取决于参数设置。以下是该方法的详细描述:

  • 参数

    • dropna:布尔值,默认为 True。如果设置为 True,则在计算唯一值数量时忽略 NaN 值;如果设置为 False,则将 NaN 视为一个唯一值。
  • 返回值

    • 返回一个整数,表示 Series 中唯一值的数量。
示例及结果
import pandas as pd# 创建一个包含重复值和 NaN 的 Series
s = pd.Series([1, 2, 2, 3, 3, 3, 4, 4, 4, 4, None, None])# 计算唯一值的数量,默认 dropna=True
result_default_dropna = s.nunique()
print("Number of unique values (default dropna=True):", result_default_dropna)# 计算唯一值的数量,不忽略 NaN 值
result_dropna_false = s.nunique(dropna=False)
print("Number of unique values (dropna=False):", result_dropna_false)# 包含字符串类型的 Series
s_str = pd.Series(['apple', 'banana', 'apple', 'orange', 'banana', 'grape', None, None])# 计算字符串 Series 中唯一值的数量,默认 dropna=True
result_str_default_dropna = s_str.nunique()
print("Number of unique string values (default dropna=True):", result_str_default_dropna)# 计算字符串 Series 中唯一值的数量,不忽略 NaN 值
result_str_dropna_false = s_str.nunique(dropna=False)
print("Number of unique string values (dropna=False):", result_str_dropna_false)
输出结果
Number of unique values (default dropna=True): 4
Number of unique values (dropna=False): 5
Number of unique string values (default dropna=True): 4
Number of unique string values (dropna=False): 5
解释
  • 对于数值型 Series:

    • 默认情况下 (dropna=True),计算的是忽略 NaN 值的唯一值数量。
    • 如果 dropna=False,则将 NaN 视为一个唯一值,并计算所有唯一值的数量。
  • 对于字符串型 Series:

    • 同样,默认情况下 (dropna=True) 忽略 NaN 值,计算唯一字符串的数量。
    • 如果 dropna=False,则将 NaN 视为一个唯一值,并计算所有唯一值的数量。
注意事项
  • nunique() 方法主要用于统计唯一值的数量,而不返回这些值本身。如果需要获取唯一值,请使用 pandas.Series.unique() 方法。
  • dropna 参数决定了是否将 NaN 视为一个唯一值,这在处理包含缺失数据的数据集时非常重要。

通过这些示例和解释,您可以更好地理解如何使用 pandas.Series.nunique() 方法来统计 Series 中唯一值的数量,并根据需要选择是否忽略 NaN 值。


http://www.mrgr.cn/news/90154.html

相关文章:

  • 最大熵模型原理和相关文献
  • 強化學習機器人設置思路
  • uniapp访问django目录中的图片和视频,2025[最新]中间件访问方式
  • 版本更新|OpenCSG AutoHub v0.2.8
  • 经典路径规划算法(全)
  • Qt 支持的动画格式对比,Lottie/APNG/GIF/WEBP
  • Python的
  • 大模型基本原理(二)——ChatGPT的工作原理
  • 嵌入式工程师面试准备(客观题准备)
  • 示例代码:C# MQTTS双向认证(客户端)(服务器EMQX)
  • 【清晰教程】通过Docker为本地DeepSeek-r1部署WebUI界面
  • Mac(m1)本地部署deepseek-R1模型
  • QT实现多线程的方法
  • 使用EVE-NG-锐捷实现单臂路由
  • openbmc web/redfish到底层设计(持续更新...)
  • Spring AI 介绍
  • 【操作系统】Linux基本命令
  • Redis | 十大数据类型
  • Ubuntu 下 nginx-1.24.0 源码分析 ngx_tm_t 类型
  • 旋转位置编码(RoPE)讲解和代码实现
  • vue动态table 动态表头数据+动态列表数据
  • iOS主要知识点梳理回顾-3-运行时
  • 力扣--链表
  • leetcode 做题思路快查
  • 大语言模型RAG,transformer
  • 【C++】命名空间