首页 > 解决方案 > 考拉差异没有像熊猫一样给出匹配的结果

问题描述

我有一只熊猫,考拉 df 如下

df = pd.DataFrame({'a': [1, 2, 3, 4, 5, 6],'b': [1, 1, 2, 3, 5, 8],'c': [1, 4, 9, 16, 25, 36]})

我正在尝试使用上一列生成差异,如下所示

df.diff(axis=1)
    a  b   c
0 NaN  0   0
1 NaN -1   3
2 NaN -1   7
3 NaN -1  13
4 NaN  0  20
5 NaN  2  28

当我尝试在考拉中生成相同的内容时,如下所示

Kdf = ks.DataFrame({'a': [1, 2, 3, 4, 5, 6],'b': [1, 1, 2, 3, 5, 8],'c': [1, 4, 9, 16, 25, 36]})

kdf.diff(axis=1) # gives error as(not implemented axis should be 0 or index)

还尝试定义为 kdf.diff(periods=1, axis=0) 结果与 pandas 不同

   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

截至目前,我正在转换为熊猫并返回考拉(这会给出匹配的结果,如熊猫输出)

Ndf = ks.DataFrame(kdf.to_pandas().diff(axis=1))
Ndf
  a  b   c
0 NaN  0  0
1 NaN -1  3
2 NaN -1  7
3 NaN -1  13
4 NaN  0  20
5 NaN  2  28

请建议是否有更好的方法通过 Koalas 实现相同的功能而不将其转换为 pandas df。

谢谢

标签: pythonpandasdataframediff

解决方案


推荐阅读