我有一个类似下面的系列
0 [1, 12, 23]
1 [2, 23, 54]
2 [3, 23]
3 [4]
dtype: object
我想根据列表(爆炸)中的值将此单个系列转换为数据框。
预期输出:
0 1 2
0 1 12 23
1 2 23 54
2 3 23 None
3 4 None None
我尝试过
s=pd.Series([[1,12,23],[2,23,54],[3,23],[4]])
s=s.astype(str)
s.str.replace('\[|\]','').str.split(', ',expand=True)
尽管我正在寻找解决此问题的好方法,但上面的代码仍能胜任。
答案 0 :(得分:3)
使用以下内容:
m = pd.DataFrame(s.values.tolist(), index= s.index)
print(m)
0 1 2
0 1 12.0 23.0
1 2 23.0 54.0
2 3 23.0 NaN
3 4 NaN NaN