2017-08-01 118 views
0

我正在努力以简单有效的方式重构我的数据帧。Python - 简单的数据帧重构

第一个数据帧'new'是我拥有的,并且所需的数据帧是new2。我一直在调整pivot,stack,unstack,set_index,reshape等很长时间,但仍然无法实现这个简单的转换。我不断收到错误消息或错误的结果。有人可以帮忙吗?

我有什么

data1 = [50, 60] 
data2 = [100, 200] 
year = [2015,2016] 
new = pd.DataFrame({'product': data1, 'year':year, 'market':data2}) 

我想要什么

new2 = pd.DataFrame(columns = ['2015', '2016']) 
new2.loc['market'] = data1 
new2.loc['product'] = data2 

desired outcome

回答

0

您需要set_indexT和持续删除列名称添加rename_axis

df = df.set_index('year').T.rename_axis(None, axis=1) 
print (df) 
     2015 2016 
market 100 200 
product 50 60