[英]Turn multi-index of pandas series into dataframe columns
我有以下系列与多索引:
import pandas as pd
index = pd.MultiIndex(labels = [[0,1,1],[2,2,3]], levels = [[1,2],[1,2,3,4]], names = ['a','b'])
s = pd.Series(index=index, data=[100,200,300])
a b
1 3 100
2 3 200
4 300
我想将它转换为DataFrame,其中行是第一个索引的标签(例如a),列是第二个索引的标签(例如b),值是index(a,b)处的值(如果没有,则为None):
desired_df = pd.DataFrame(index=pd.Index(data=[1,2],name='a'),
data = [[100,None],[200,300]],
columns = [3,4])
3 4
a
1 100 NaN
2 200 300.0
使用Series.unstack
函数:
print (s.unstack())
b 3 4
a
1 100.0 NaN
2 200.0 300.0
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.