1. 程式人生 > >pandas 列表元素散開成多個記錄

pandas 列表元素散開成多個記錄

             圖一

           圖二

需求:由圖一變成圖二,將daList散開成多條記錄

x = {'sa':[2,3,3,5,5,7],'daList':[[2,3],[4,5],[9],[44,55],[23,45],[66]],'subNet':[2,3,4,4,5,6]}
x = pd.DataFrame(x)
z = x.groupby(['sa'])['daList'].apply(lambda x:np.concatenate(list(x))).reset_index()
i = pd.concat([pd.Series(row['sa'], row['daList']) for _, row in z.iterrows()]).reset_index()
i.columns = ['daList','sa']