dataframe 输出标题,转置Pandas DataFrame并将列标题更改为列表

I have the following Pandas sub-dataframe

col1 name1 name2

522 a 10 0.2

1021 b 72 -0.1

col1 has no duplicate. I want to transpose the dataframe and change the column header to col1 values. Ideally the output should look like

Variable a b

name1 10 72

name2 0.2 -0.1

it is easy to transpose the df and lable the first column as Variable

df.transpose().reset_index().rename(columns={'index':'Variable'})

the resulted DF will have indices of original DF as column headers (and they are not sorted and dont start from 1 in my data!) How can I change the rest of column names?

解决方案df = df.set_index('col1').T

print (df)

col1 a b

name1 10.0 72.0

name2 0.2 -0.1

df = df.set_index('col1').T.rename_axis('Variable').rename_axis(None, 1)

print (df)

a b

Variable

name1 10.0 72.0

name2 0.2 -0.1

If need column from index:

df = df.set_index('col1').T.rename_axis('Variable').rename_axis(None, 1).reset_index()

print (df)

Variable a b

0 name1 10.0 72.0

1 name2 0.2 -0.1

你可能感兴趣的:(dataframe,输出标题)