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


Python pyspark Rolling.sum用法及代碼示例


本文簡要介紹 pyspark.pandas.window.Rolling.sum 的用法。

用法:

Rolling.sum() → FrameLike

計算給定DataFrame或係列的滾動總和。

注意

此 API 的當前實現使用 Spark 的 Window 而不指定分區規範。這會導致將所有數據移動到單個機器中的單個分區中,並可能導致嚴重的性能下降。避免對非常大的數據集使用此方法。

返回

係列或DataFrame

與輸入相同的類型,具有相同的索引,包含滾動求和。

例子

>>> s = ps.Series([4, 3, 5, 2, 6])
>>> s
0    4
1    3
2    5
3    2
4    6
dtype: int64
>>> s.rolling(2).sum()
0    NaN
1    7.0
2    8.0
3    7.0
4    8.0
dtype: float64
>>> s.rolling(3).sum()
0     NaN
1     NaN
2    12.0
3    10.0
4    13.0
dtype: float64

對於 DataFrame,每個滾動求和都是按列計算的。

>>> df = ps.DataFrame({"A": s.to_numpy(), "B": s.to_numpy() ** 2})
>>> df
   A   B
0  4  16
1  3   9
2  5  25
3  2   4
4  6  36
>>> df.rolling(2).sum()
     A     B
0  NaN   NaN
1  7.0  25.0
2  8.0  34.0
3  7.0  29.0
4  8.0  40.0
>>> df.rolling(3).sum()
      A     B
0   NaN   NaN
1   NaN   NaN
2  12.0  50.0
3  10.0  38.0
4  13.0  65.0

相關用法


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