Python 在熊猫中展平阵列
DataFrame中的一列是数组。我怎么把它弄平Python 在熊猫中展平阵列,python,pandas,Python,Pandas,DataFrame中的一列是数组。我怎么把它弄平 column1 column2 column3 var1 var11 [1, 2, 3, 4] var2 var22 [1, 2, 3, 4, -2, 12] var3 var33 [1, 2, 3, 4, 33, 544] 展平后应为: column1 column2 column3 var1 var11 1 var1 var11 2 var1 var11 3 var1
column1 column2 column3
var1 var11 [1, 2, 3, 4]
var2 var22 [1, 2, 3, 4, -2, 12]
var3 var33 [1, 2, 3, 4, 33, 544]
展平后应为:
column1 column2 column3
var1 var11 1
var1 var11 2
var1 var11 3
var1 var11 4
var2 var22 1
var2 var22 2
var2 var22 3
var2 var22 4
var2 var22 -2
......
var3 var33 544
我似乎
unstack
可以帮助我,但我不知道具体是如何做到的。这里有一个“一行”方法,其中df
是您的数据帧:
import pandas as pd
df.join(df.column3.apply(pd.Series)).drop('column3', 1).set_index([u'column1', u'column2']).stack().reset_index().drop('level_2', 1).rename(columns={0:'column3'})
屈服:
column1 column2 column3
0 var1 var11 1
1 var1 var11 2
2 var1 var11 3
3 var1 var11 4
4 var2 var22 1
5 var2 var22 2
6 var2 var22 3
7 var2 var22 4
8 var2 var22 -2
9 var2 var22 12
10 var3 var33 1
11 var3 var33 2
12 var3 var33 3
13 var3 var33 4
14 var3 var33 33
15 var3 var33 544
这可能与: