Как принять значения в столбце в качестве столбцов в DataFrame в пандах - PullRequest
0 голосов
/ 26 августа 2018

Мой текущий DataFrame:

             Term  value
       Name
        A      1     35
        A      2     40
        A      3     50
        B      1     20
        B      2     45
        B      3     50

Я хочу получить фрейм данных как: Term 1 2 3 Name A 35 40 50 B 20 45 50

Как я могу получить его? Я пытался использовать pivot_table, но не получил ожидаемый результат. Есть ли способ получить ожидаемый результат?

1 Ответ

0 голосов
/ 26 августа 2018

Использование:

df = df.set_index('Term', append=True)['value'].unstack()

Или:

df = pd.pivot(df.index, df['Term'], df['value'])

print (df)
Term   1   2   3
Name            
A     35  40  50
B     20  45  50

РЕДАКТИРОВАТЬ: Если дубликаты попарно Name с Term, то необходимо объединение, например, sum или mean:

df = df.groupby(['Name','Term'])['value'].sum().unstack(fill_value=0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...