更改数据框的维度

问题描述 投票:1回答:1

This is my dataframe

我有一个带有MultiIndex和尺寸为18 x 1的数据框。我想获得一个尺寸为6 x 3的数据框,其中航空公司名称为行索引,情绪为负,中性和正数为列名。最快的方法是什么?

我这里有一个数据示例:

idx = pd.MultiIndex.from_product([['airline_1', 'airline_2', 'airline_3','airline_4', 'airline_5', 'airline_6'],
                                  ['negative', 'neutral', 'positive']],
                                 names=['airline', 'sentiment'])
col = ['test']
df = pd.DataFrame('-',idx,col)
test = []
for i in range(18):
    test.append(i)
df['value'] = test
df = df.drop('test', axis = 1)
python pandas dataframe
1个回答
0
投票

一旦你知道这个方法,这很简单: 只是df.unstack()会让你到那里:)

要将MultiIndex删除为列,并保持情绪分数,请执行以下操作:

df.columns = df.columns.droplevel()
© www.soinside.com 2019 - 2024. All rights reserved.