Я хочу преобразовать данные столбца в строки, как это, как я могу это сделать? Язык программирования Python

Исходные данные:

    data    month   user_id
0   3782.0  01      1
1   1882.0  02      1
2   536.0   03      2
3   526.0   04      2

Преобразованные данные:

user_id mo_1 mo_2 mo_3 mo_4
1       3782 1882 
2                 536  526

Исходное определение данных:

df = pd.DataFrame({'user_id': {0: 1, 1: 1, 2: 1, 3: 1},
                   'month': {0: '01', 1: '02', 2: '03', 3: '04'},
                  'data': {0: 3782., 1: 1882., 2: 536., 3: 526.},})
1
F.bob 29 Май 2017 в 02:56

2 ответа

Лучший ответ

Чтобы изменить значения строк на заголовки столбцов, вам нужно использовать unstack

df.set_index(['user_id', 'month'], inplace=True)
df = df.unstack()

           data                      
month        01      02     03     04
user_id                              
1        3782.0  1882.0  536.0  526.0
0
Riley Hun 29 Май 2017 в 00:12

Согласно этому ответу здесь вам необходимо использовать транспонирование T.

print (df.set_index('fruits').T)
fruits     apples  grapes  figs
numFruits      10      20    15
0
kopo222 29 Май 2017 в 00:00