Python Pandas转置DataFrame并重命名列

时间:2019-01-09 21:00:25

标签: python pandas dataframe

这是一个简单的DataFrame示例:

import pandas as pd

d = dict(
    column1 = [1, 'a', 'foo'],
    column2 = [2, 'b', 'bar'],
    column3 = [3, 'c', 'baz'],
)
df = pd.DataFrame(data=d)
print(df)

与输出

  column1 column2 column3
0     1     2     3
1     a     b     c
2   foo   bar   baz

我想转置它并重命名列:

df.do_some_manipulation('numbers', 'letters', 'words')

所以输出应该是

   numbers letters words
0        1       a   foo
1        2       b   bar
2        3       c   baz

转置方法不完全是问题,那我该怎么办?

2 个答案:

答案 0 :(得分:3)

一个更好的选择是将pd.DataFrame.from_dict设为index

pd.DataFrame.from_dict(d, orient='index', columns=['numbers', 'letters', 'words'])

         numbers letters words
column1        1       a   foo
column2        2       b   bar
column3        3       c   baz

答案 1 :(得分:0)

尝试一下:

df = df.T
df.columns = ['numbers', 'letters', 'words']
df = df.reset_index(drop = True)