如何减去两列pyspark数据帧并除以?

vis*_*ane 1 dataframe pyspark

我有这样的数据框..

dd1:-

    A    B   
   2112  2637
   1293  2251
   1779  2435
   935   2473
Run Code Online (Sandbox Code Playgroud)

我想从 col A 中减去 col B 并将其除以 col A。像这样

    A    B       Result 
   2112  2637    -0.24
   1293  2251    -0.74
   1779  2435    -0.36
   935   2473   -1.64
Run Code Online (Sandbox Code Playgroud)

喜欢 (2112-2637)/2112 = -0.24

如果直接不可能,那么第一个我们可以执行减法运算并将其存储在新的 col 中,然后将该 col 划分并存储在另一个 col 中。

ore*_*pot 6

大体思路如下:

dd1['Result'] = ( dd1['A'] - dd1['B'] ) / dd1['A']
Run Code Online (Sandbox Code Playgroud)

在 Pyspark 的情况下,它看起来像:

dd1 = dd1.withColumn('Result', ( dd1['A'] - dd1['B'] ) / dd1['A'] )
Run Code Online (Sandbox Code Playgroud)