我一直在寻找合并多个DataFrame的方法,并在this post中遇到了解决方案。我想尝试将DataFrame与reduce
合并,所以我尝试了:
l = [[1, 10], [2, 100], [3, 1000]]
df['A'] = pd.DataFrame(l, columns=['k', 'A'])
df['B'] = pd.DataFrame(l, columns=['k', 'B'])
df['C'] = pd.DataFrame(l, columns=['k', 'C'])
reduce(lambda left, right:pd.merge(df[left], df[right], on=['k'], how='outer'), df)
但是,我遇到了一个错误:
TypeError: 'DataFrame' objects are mutable, thus they cannot be hashed
我现在知道为什么出错了。但是,我想问一问:使用这种奇特的reduce
方法是否有任何解决方法来合并多个DataFrame?