我希望将列数据转换为这样的行,我怎么能执行此操作?编程语言是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.},})
答案 0 :(得分:0)
根据这个答案here,你需要使用T的转置。
print (df.set_index('fruits').T)
fruits apples grapes figs
numFruits 10 20 15
答案 1 :(得分:0)
要将行值更改为列标题,您需要使用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