簡體   English   中英

如何在 pandas 中使用兩個數據框列名 append 兩個數據框

[英]How to append two data frame in pandas with both data frame column names

df1 =

date    column1 column2 column3 column4
1       123     124     125     126
2       23       24     25      26
3       42       43     44      45

df2 =

date    c_xyz1  c_xyz2  c_xyz3  
1       123     124     125     
2       23       24     25      
3       42       43     44      

我需要 output 之類的

df3 =

date    column1 column2 column3 column4
1       123     124     125     126
2       23       24     25      26
3       42       43     44      45

date    c_xyz1  c_xyz2  c_xyz3  
1       123     124     125     
2       23       24     25      
3       42       43     44      

append df2 和 df1 和列名 df1 有第 4 列,而 df2 有第 3 列有不同的名稱需要我需要append 和列名

如果在編寫 xlsx 文件時有可能,那很好。

我很確定你可以

df3 = pandas.concat([df1,df2])

你可能想要pandas.concat([df1,df2],axis=1)

import pandas
df1 = pandas.DataFrame({"A":[1,2,3],"B":[2,3,4]})
df2 = pandas.DataFrame({"C":[3,4,5],"D":[4,5,6]})

df3 = pandas.concat([df1,df2])
"""
     A    B    C    D
0  1.0  2.0  NaN  NaN
1  2.0  3.0  NaN  NaN
2  3.0  4.0  NaN  NaN
0  NaN  NaN  3.0  4.0
1  NaN  NaN  4.0  5.0
2  NaN  NaN  5.0  6.0
"""


df3_alt = pandas.concat([df1,df2],axis=1)
"""
   A  B  C  D
0  1  2  3  4
1  2  3  4  5
2  3  4  5  6
"""

你可以結合制作一個 csv 我猜中間有不同的列

with open("out.csv","wb") as f:
     f.write("\n".join([df1.to_csv(),df2.to_csv()])

print("".join([df1.to_csv(), df2.to_csv()]))
"""
,A,B
0,1,2
1,2,3
2,3,4
,C,D
0,3,4
1,4,5
"""

這是excel版本...

with pandas.ExcelWriter("out.xlsx") as w:
     df1.to_excel(w)
     df2.to_excel(w,startrow=len(df1)+1)

我使用寫入 xlsx

writer = pd.ExcelWriter('test.xlsx',engine='xlsxwriter')   
workbook=writer.book
worksheet=workbook.add_worksheet('Validation')
writer.sheets['Validation'] = worksheet
df.to_excel(writer,sheet_name='Validation',startrow=0 , startcol=0)   
another_df.to_excel(writer,sheet_name='Validation',startrow=20, startcol=0)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM