pyspark.sql.functions.posexplode_outer

pyspark.sql.functions。 posexplode_outer ( 上校:ColumnOrName )→pyspark.sql.column.Column

返回一個新行中每一個元素位置給定數組或地圖。與posexplode不同,如果數組/地圖是null或空行(null, null)。使用默認的列名稱pos的位置,上校數組中的元素關鍵價值除非另有說明,元素的映射

例子

> > >df=火花createDataFrame(((1,(“foo”,“酒吧”),{“x”:1.0}),(2,[],{}),(3,沒有一個,沒有一個)),(“id”,“an_array”,“a_map”))> > >df選擇(“id”,“an_array”,posexplode_outer(“a_map”))顯示()+ - - - + - - - - - - - - - - - + - - - + - - - + - - - +| | id an_array pos | | | |鍵值+ - - - + - - - - - - - - - - - + - - - + - - - + - - - +| 1 | (foo, bar) | 0 | x | 1.0 || 2 |[]零零零| | | || 3 |空零零零| | | |+ - - - + - - - - - - - - - - - + - - - + - - - + - - - +> > >df選擇(“id”,“a_map”,posexplode_outer(“an_array”))顯示()+ - - - + - - - - - - - - - - - + - - - + - - - +| | id a_map pos | | |上校+ - - - + - - - - - - - - - - - + - - - + - - - +| 1 | {x - > 1.0} | 0 | foo || 1 | {x - > 1.0} | 1 | |酒吧| 2 |{}|空零| |零零零| | | | 3 |+ - - - + - - - - - - - - - - - + - - - + - - - +