我正在try 合并两个收件箱,以便最终得到一个列数相同但行计数增加的收件箱.
import pandas as pd, numpy as np
data1 = [['date' , 'symbol', 'value'],
['1999-01-10', 'AAA', 101],
['1999-01-11', 'AAA', 201]]
I am trying to merge two dataframes such that i end up with one with same number of columns but row count should increase
import pandas as pd, numpy as np
data1 = [['date' , 'symbol', 'value'],
['1999-01-10', 'AAA', 101],
['1999-01-11', 'AAA', 201]]
data2 = [['date' , 'symbol', 'value'],
['1999-01-10', 'BBB', 101],
['1999-01-11', 'BBB', 201]]
df1 = pd.DataFrame(data1[1:], columns=data1[:1])
df2 = pd.DataFrame(data2[1:], columns=data2[:1])
df = df1.merge(df2, on = ['date', 'symbol'], how='outer')
上面的代码在合并行上产生错误:
ValueError: The column label 'date' is not unique.
For a multi-index, the label must be a tuple with elements corresponding to each level.
我知道在上面的情况下我可以通过pd.CONCAT实现我想要的目标,但我想理解为什么合并在这里失败,因为日期+符号的复合键是不同的/唯一的? 而且我不明白关于多索引的部分. 除了这些 pyramid 上的"自然"指数之外,没有任何指数.