将列名复制到熊猫的第一行数据中

问题描述 投票:0回答:2

当我将此数据框写入Google表格时,我发现有一个熊猫数据框,如下所示,我发现标头丢失了。我的问题是如何使其工作?还是将列名复制到第一行数据中,其他数据是否不变?

import pandas as pd

year = [2005, 2006, 2007]
A = [4, 5, 7]
B = [3, 3, 9]
C = [1, 7, 6]
df_old = pd.DataFrame({'year' : year, 'A' : A, 'B' : B, 'C' : C}, columns=['year', 'A', 'B', 'c'])

Out[25]: 
   A  B  C  year
0  4  3  1  2005
1  5  3  7  2006
2  7  9  6  2007

#want output
Out[25]: 
   A  B  C  year
0  A  B  C  year
1  4  3  1  2005
2  5  3  7  2006
3  7  9  6  2007
python-3.x pandas python-3.7
2个回答
0
投票

IIUC

df=pd.DataFrame(df_old.columns.values[None,:],columns=df_old.columns).\
       append(df_old).\
       reset_index(drop=True)
df
   year  A  B    c
0  year  A  B    c
1  2005  4  3  NaN
2  2006  5  3  NaN
3  2007  7  9  NaN

0
投票

将列名复制到第一行,如下所示

df_old.loc[-1] = df_old.columns
df_old.index = df_old.index + 1 # shift index 
df_old.sort_index(inplace=True)

© www.soinside.com 2019 - 2024. All rights reserved.