这里是熊猫新手,所以这可能是一个相当基本且简单的问题。
我想将一个 DataFrame 中的一个索引中的数据合并到另一个 DataFrame 中的另一个索引中。
在下面的示例中,我将数据拆分为已验证索引的 DataFrame (MainTable) 和错误索引的 DataFrame (ErrorTable)。
在手动查看 ErrorTable 中的错误条目后,我希望能够合并来自 ErrorTable 的“Cta”和“ Mice' 条目到 MainTable 的 'Cat' 和 'Mouse' 条目。
import pandas as pd
RawData = pd.DataFrame({'Number sighted today':[4, 3, 1, 2, 8, 3],
'Number sighted yesterday':[5, 1, 0, 2, 1, 0]},
index = ['Dog', 'Cat', 'Cta', 'Mouse', 'Ant', 'Mice'])
AllowedIndexes = ['Dog','Cat','Mouse','Ant']
MainTable = RawData[RawData.index.isin(AllowedIndexes) == True]
ErrorTable = RawData[RawData.index.isin(AllowedIndexes) == False]
我试过了:
MainTable.loc['Cat'] = MainTable.loc['Cat'] + ErrorTable.loc['Cta']
MainTable.loc['Mouse'] = MainTable.loc['Mouse'] + ErrorTable.loc['Mice']
虽然它在技术上有效,但它不断抛出一条警告消息,指出我做错了一些我一直无法理解的事情,所以我认为必须有一种更稳定的方法来做到这一点。
谢谢!
答案 0 :(得分:0)
如果您的意思是按元素添加,则可能如下所示:
MainTable.loc['Mouse', :] += ErrorTable.loc['Mice', :]
MainTable.loc['Cat', :] += ErrorTable.loc['Cta', :]
>>> MainTable
Number sighted today Number sighted yesterday
Dog 4 5
Cat 4 1
Mouse 5 2
Ant 8 1