我有一个带键的数据框和一个在数据框列中包含结构数组的列。每行包含一列,看起来像这样:
[
{"id" : 1, "someProperty" : "xxx", "someOtherProperty" : "1", "propertyToFilterOn" : 1},
{"id" : 2, "someProperty" : "yyy", "someOtherProperty" : "223", "propertyToFilterOn" : 0},
{"id" : 3, "someProperty" : "zzz", "someOtherProperty" : "345", "propertyToFilterOn" : 1}
]Run Code Online (Sandbox Code Playgroud)
现在,我想做两件事:
这样的结果是:
[
{"id" : 1, "newProperty" : "xxx_1"},
{"id" : 3, "newProperty" : "zzz_345"}
]Run Code Online (Sandbox Code Playgroud)
我知道如何使用爆炸来实现,但是爆炸在将其放回原处时还需要在键上使用groupBy。但是由于这是一个流数据帧,因此我还必须在它上面加一个水印,这是我想避免的。
还有其他方法可以实现而不使用爆炸吗?我敢肯定,有一些Scala魔术可以实现这一目标!
谢谢!