当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。