我有一个结构如下的Dataframe
ID:string
Amt:long
Col:array
element:struct
Seq:int
Pct:double
Sh:double
Dataframe输出
+----+-------+------------------------------------------+
|ID |Amt |col |
+----+-------+------------------------------------------+
|ABC |23077 |[[1, 1.5, 1, 10000], [2, 1.2, 2.5,40000]] |
+------------+------------------------------------------+
我需要到下面的计算第一阵列的最后一个元素将是相同的10000。对于下一个数组,我需要用第一个数组的值(40000-10000)减去它,得到30000的输出
Expected output
+----+-------+-------------------------------------------+
|ID |Amt |col1 |
+----+---------------------------------------------------+
|ABC |23077 |[[1, 1.5, 1, 10000], [2, 1.2, 2.5, 30000]] |
+----+-------+-------------------------------------------+
我该如何做到这一点?
1条答案
按热度按时间hwazgwia1#
你可以用
transform
并将金额与上一个条目进行比较: