Pandas.Series.product() 乘积(累乘积) 详解 含代码 含测试数据集 随Pandas版本持续更新

关于Pandas版本: 本文基于 pandas2.2.0 编写。

关于本文内容更新: 随着pandas的stable版本更迭,本文持续更新,不断完善补充。

传送门: Pandas API参考目录

传送门: Pandas 版本更新及新特性

传送门: Pandas 由浅入深系列教程

本节目录

  • Pandas.Series.product()
    • 计算公式:
    • 语法:
    • 返回值:
    • 参数说明:
      • axis 指定计算方向(行或列)
      • skipna 忽略缺失值
      • numeric_only 排除非纯数值的行或列
      • min_count 有效数值数量
      • **kwargs
    • 相关方法:
    • 示例:
      • 例1:如果 `Series` 都是缺失值,那么乘积是1,因为在Series.product方法中,缺失值被解析为1.0。
      • 例2:非缺失值数量,小于 `min_count` ,则结果为 `nan`

Pandas.Series.product()

Pandas.Series.product 方法用于返回 Series 所有元素的乘积(累乘积)

  • Pandas.Series.productpandas.Series.prod 效果一致。
  • Pandas.Series.prodpandas.Series.product 的简化缩写。

计算公式:

  • 累乘公式

    ∏ i = 1 n a i \prod_{i=1}^{n} a_i i=1nai

    下标 i i i 表示累乘的起始位置,上标 n n n 表示累乘的终止位置。, a i a_i ai 表示被累乘的项。

语法:

Series.product(axis=0, skipna=True, numeric_only=False, min_count=0, **kwargs)

返回值:

  • Series or scalar

参数说明:

axis 指定计算方向(行或列)

  • axis : {index (0), columns (1)

    对于 Series 此参数无效。

    新增于 Pandas 2.0.0 : axis 参数,新增于Pandas 2.0.0 版本。

skipna 忽略缺失值

  • skipna : bool, default False >

    skipna 参数,用于指定求乘积的时候是否忽略缺失值:

    • False: 不忽略,缺失值 在求乘积的时候会被解析为浮点数 float 1.0例1
    • True: 忽略缺失值。

numeric_only 排除非纯数值的行或列

  • numeric_only : bool, default False

    对于 Series 此参数无效。

min_count 有效数值数量

  • min_count : int, default 0

    min_count 参数,用于指定执行操作所需的有效值数量。如果存在的非 NA 值少于 min_count,则结果将为 NA例2

**kwargs

  • **kwargs :

    用于保持和 numpy 兼容而保留的参数,一般不需要使用。

相关方法:

➡️ 相关方法


  • Series.sum

    求和(累和)

  • Series.min

    最小值

  • Series.max

    最大值

  • Series.idxmin

    最小值索引

  • Series.idxmax

    最大值索引

  • DataFrame.sum

    求和(累和)

  • DataFrame.min

    最小值

  • DataFrame.max

    最大值

  • DataFrame.idxmin

    最小值索引

  • DataFrame.idxmax

    最大值索引

示例:

测试文件下载:

本文所涉及的测试文件,如有需要,可在文章顶部的绑定资源处下载。

若发现文件无法下载,应该是资源包有内容更新,正在审核,请稍后再试。或站内私信作者索要。

测试文件下载位置.png

测试文件下载位置

例1:如果 Series 都是缺失值,那么乘积是1,因为在Series.product方法中,缺失值被解析为1.0。

import numpy as np
import pandas as pd

s = pd.Series([np.NaN, np.NaN])

s.product()
1.0

例2:非缺失值数量,小于 min_count ,则结果为 nan

import numpy as np
import pandas as pd

s = pd.Series([1, 2, 3, 4, 5, np.NaN])

s.product(numeric_only=True, min_count=6)
nan

观察上面的计算结果,min_count 参数传递了数字6,这意味着 Series 里至少要有6个非na值。由于只有5个,所以返回了nan

你可能感兴趣的:(Pandas,API参考,pandas)