mars.dataframe.DataFrame.diff#
- DataFrame.diff(periods=1, axis=0)#
元素的第一次离散差异。 计算数据框中一个元素与另一个元素的差异(默认是与上一行同列的元素进行比较)。
- Parameters
periods (int, 默认值 1) – 计算差异时的移位周期,接受负值。
axis ({0 或 'index', 1 或 'columns'}, 默认 0) – 在行(0)或列(1)上计算差异。
- Return type
另请参阅
Series.diff时间序列的首次离散差分。
DataFrame.pct_change在给定的若干周期内的百分比变化。
数据框.shift按所需的周期数移位索引,并可选择时间频率。
备注
对于布尔数据类型,这使用
operator.xor()而不是operator.sub()。示例
与前一行的区别
>>> import mars.dataframe as md >>> df = md.DataFrame({'a': [1, 2, 3, 4, 5, 6], ... 'b': [1, 1, 2, 3, 5, 8], ... 'c': [1, 4, 9, 16, 25, 36]}) >>> df.execute() a b c 0 1 1 1 1 2 1 4 2 3 2 9 3 4 3 16 4 5 5 25 5 6 8 36
>>> df.diff().execute() a b c 0 NaN NaN NaN 1 1.0 0.0 3.0 2 1.0 1.0 5.0 3 1.0 1.0 7.0 4 1.0 2.0 9.0 5 1.0 3.0 11.0
与上一列的区别
>>> df.diff(axis=1).execute() a b c 0 NaN 0.0 0.0 1 NaN -1.0 3.0 2 NaN -1.0 7.0 3 NaN -1.0 13.0 4 NaN 0.0 20.0 5 NaN 2.0 28.0
与第三前一行的差异
>>> df.diff(periods=3).execute() a b c 0 NaN NaN NaN 1 NaN NaN NaN 2 NaN NaN NaN 3 3.0 2.0 15.0 4 3.0 4.0 21.0 5 3.0 6.0 27.0
与以下行的差异
>>> df.diff(periods=-1).execute() a b c 0 -1.0 0.0 -3.0 1 -1.0 -1.0 -5.0 2 -1.0 -1.0 -7.0 3 -1.0 -2.0 -9.0 4 -1.0 -3.0 -11.0 5 NaN NaN NaN