我有 2 個從網上抓取的資料框,我需要將它們組合成一個資料框以匯出到 Excel。但是我遇到了格式問題,需要看看是否有人可以幫我解決這個問題。
資料框 1=
df1= pd.DataFrame(table_contents)
df1= df1.replace(r'\n','',regex=True)
print(df1)
結果:
0 1 2
0 Order Number Manager Order Date
1 Z57-808456-9 Victor Tully 01/13/2022
資料框2=
order_list.append(order_info)
df2 = pd.DataFrame(order_list)
df2.head()
print(df2)
結果:
Order Number Location Zip Code
0 Z57-808456-9 Department 28 48911
我嘗試過使用幾種不同的替代方法,但仍然沒有得到正確的結果。
combined_dfs= pd.concat([df1,df2],axis=1,join="inner")
print (combined_dfs)
結果:
Order Number Location Zip Code 0 1 2
0 Z57-808456-9 Department 28 48911 Order Number Manager Order Date
我試圖將它們全部放在 2 行上,并可能洗掉顯示在兩者上的重復訂單號。如果不是,我仍然可以完全忍受它和一個副本。
預期成績:
Order Number Location Zip Code Manager Order Date
Z57-808456-9 Department 28 48911 Victor Tully 01/13/2022
uj5u.com熱心網友回復:
您可以按 中的第一行創建列DataFrame.set_axis,洗掉第一行iloc[1:],然后加入df2:
df = df1.set_axis(df1.iloc[0], axis=1, inplace=False).iloc[1:]
combined_dfs = df2.merge(df, on='Order Number')
print (combined_dfs)
Order Number Location Zip Code Manager Order Date
0 Z57-808456-9 Department 28 48911 Victor Tully 01/13/2022
uj5u.com熱心網友回復:
在您的第一個資料框中,您似乎將列名作為第一行。您可以洗掉第一行并重命名列,然后合并兩個資料框。
# remove first row of data
df1 = df1.iloc[1:].reset_index()
# set column names
df1.columns = ['Order Number', 'Location', 'Zip Code']
# merge dataframes on order number
combined_df = pd.merge(df1, df2, on='Order Number', how='inner')
uj5u.com熱心網友回復:
pd.merge(df1, df2, on='Order Number')
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/466669.html
下一篇:根據多個其他列查找正負bin限制
