如何减去两列pyspark数据帧并进行除法?

时间:2019-07-19 04:08:39

标签: dataframe pyspark

我有这样的数据框。

dd1:-

    A    B   
   2112  2637
   1293  2251
   1779  2435
   935   2473

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

    A    B       Result 
   2112  2637    -0.24
   1293  2251    -0.74
   1779  2435    -0.36
   935   2473   -1.64

像(2112-2637)/ 2112 = -0.24

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

1 个答案:

答案 0 :(得分:0)

总体思路如下:

dd1['Result'] = ( dd1['A'] - dd1['B'] ) / dd1['A']

如果是Pyspark,它将类似于:

dd1 = dd1.withColumn('Result', ( dd1['A'] - dd1['B'] ) / dd1['A'] )