加入后从S3读取镶木文件时,动态框架或数据框架将删除空列

时间:2019-12-12 20:53:53

标签: python dataframe apache-spark pyspark aws-glue

在读取S3文件时,如果源文件中的所有记录中的任何字段都不为空,则会从动态帧中删除该字段。

因此,当我们在其他转换中使用此列时,例如转换为数据框并使用group by和aggregration,则表示该属性在数据框中不存在。

我们如何停止从动态帧中删除NULL字段。我们应该向下面的方法传递什么附加参数以停止删除空列,或者还有其他方法

Glue Dynamic Frame:
joineddata = Join.apply(frame1 = frame1, frame2 = frame2, keys1 = ['x1','x2'], keys2 = ['y1','y2'], transformation_ctx = 'joinedData')

Pyspark data frame join

joineddata1 = frame1.join(frame2,[ frame1.x1 == frame2.y1, frame1.x2 == fram2.y2],how='inner')


eg : table
id value    comments
1  king
2  queen
4  soldier

eg : table2
id2 value2   
1  king1
2  queen1
4  soldier1

join table 1 and 2 
current result:
id  value  id2 , value2
1 king      1 king1
2 queen     2 queen1
4 soldier   4 soldier1

expected result:
id  value  comments id2 , value2
1 king                1 king1
2 queen               2 queen1
4 soldier             4 soldier1

comments field is missing

因为在加入pyspark不保留字段之前,我的注释字段为null。加入后有什么保留方式吗?

注释列有时可以具有有时没有的值。

谢谢

0 个答案:

没有答案