場景:繼上一個關於如何從服務器讀取excel文件到數據框(How to read an excel file directly from a Server with Python)的問題,我試圖合併多個數據幀的上下文(其中包含來自Excel工作表的數據)。在具有結構化數據的列上合併Pandas Dataframe
Issue:即使在SO中搜索類似的問題後,仍然無法解決問題。數據
格式(每張讀入數據幀):
Sheet 1 (db1)
Name CUSIP Date Price
A XXX 01/01/2001 100
B AAA 02/05/2005 90
C ZZZ 03/07/2006 95
Sheet2 (db2)
Ident CUSIP Value Class
123 XXX 0.5 AA
444 AAA 1.3 AB
555 ZZZ 2,8 AC
通緝輸出(民族解放力量):
Name CUSIP Date Price Ident Value Class
A XXX 01/01/2001 100 123 0.5 AA
B AAA 02/05/2005 90 444 1.3 AB
C ZZZ 03/07/2006 95 555 2.8 AC
我已經嘗試過:我想使用合併功能來匹配每個數據幀,但我得到了「如何」部分的錯誤。
fnl = db1
fnl = fnl.merge(db2, how='outer', on=['CUSIP'])
fnl = fnl.merge(db3, how='outer', on=['CUSIP'])
fnl = fnl.merge(bte, how='outer', on=['CUSIP'])
我也試過連接,但我只是得到一個數據幀的列表,而不是一個單一的輸出。
wsframes = [db1 ,db2, db3]
fnl = pd.concat(wsframes, axis=1)
問題:什麼是做這個操作的正確方法?
什麼錯誤你會得到嗎? –
KeyError:合併過程的'CUSIP'。對於concat,我得到了dataframes的列表,但我不能把它們放在一起做操作。 – DGMS89
您的錯誤表明'CUSIP'不可見作爲列。當你寫'db1 ['CUSIP']'或'db2 ['CUSIP']'時,你會得到什麼? –