1

I have a pandas dataframe like following when I write this dataframe into google sheets I found out header is missing. My questions is how to make it work? or copy columns name into first row of data and other data does not change?

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
jacobcan118
  • 7,797
  • 12
  • 50
  • 95

2 Answers2

2

You can also check the following answer: https://stackoverflow.com/a/24284680/11127365

For your case, the first line will be df_old.loc[-1] = df_old.columns

isabella
  • 467
  • 3
  • 11
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
BENY
  • 317,841
  • 20
  • 164
  • 234