我有一个数据框说,
col_a col_b col_c col_d
0 10 A 10 10
1 20 B 20 20
2 30 C 30 30
3 40 D 40 40
我正在尝试将其转置为
A B C D
col_a 10 20 30 40
col_c 10 20 30 40
col_d 10 20 30 40
答案 0 :(得分:2)
使用DataFrame.set_index + DataFrame.transpose:
new_df=df.set_index('col_b').T
print(new_df)
col_b A B C D
col_a 10 20 30 40
col_c 10 20 30 40
col_d 10 20 30 40
您可以执行以下操作删除列名:
new_df.columns.name=None
print(new_df)
A B C D
col_a 10 20 30 40
col_c 10 20 30 40
col_d 10 20 30 40
您还可以使用DataFrame.pivot_table:
df.pivot_table(columns='col_b')
col_b A B C D
col_a 10 20 30 40
col_c 10 20 30 40
col_d 10 20 30 40