當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python pyspark DataFrame.product用法及代碼示例


本文簡要介紹 pyspark.pandas.DataFrame.product 的用法。

用法:

DataFrame.product(axis: Union[int, str, None] = None, numeric_only: bool = None, min_count: int = 0) → Union[int, float, bool, str, bytes, decimal.Decimal, datetime.date, datetime.datetime, None, Series]

返回值的乘積。

注意

與 pandas 不同,pandas-on-Spark 使用 exp(sum(log(...))) 技巧模擬產品。因此,它僅適用於正數。

參數

axis{索引 (0), 列 (1)}

要應用的函數的軸。

numeric_only布爾值,默認無

僅包括 float、int、boolean 列。不支持 False。這個參數主要是為了pandas的兼容性。

min_count整數,默認 0

執行操作所需的有效值數。如果存在的非 NA 值少於 min_count,則結果將為 NA。

例子

在數據幀上:

結果中不包含非數字類型的列。

>>> psdf = ps.DataFrame({'A': [1, 2, 3, 4, 5],
...                     'B': [10, 20, 30, 40, 50],
...                     'C': ['a', 'b', 'c', 'd', 'e']})
>>> psdf
   A   B  C
0  1  10  a
1  2  20  b
2  3  30  c
3  4  40  d
4  5  50  e
>>> psdf.prod()
A         120
B    12000000
dtype: int64

如果沒有數字類型列,則返回空係列。

>>> ps.DataFrame({"key": ['a', 'b', 'c'], "val": ['x', 'y', 'z']}).prod()
Series([], dtype: float64)

在一個係列上:

>>> ps.Series([1, 2, 3, 4, 5]).prod()
120

默認情況下,空或all-NA係列的乘積是1

>>> ps.Series([]).prod()
1.0

這可以通過min_count 參數來控製

>>> ps.Series([]).prod(min_count=1)
nan

相關用法


注:本文由純淨天空篩選整理自spark.apache.org大神的英文原創作品 pyspark.pandas.DataFrame.product。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。