【发布时间】:2019-12-26 03:46:46
【问题描述】:
我想循环遍历两个数据框的列名,找到具有相同列名的列,并将它们组合起来创建一个新的数据框。
我尝试在 for 循环中编写 if-else 条件,但它不起作用。
具体来说,我有两个这样的数据框:
df1 = pd.DataFrame({'A': {'2019Q1': 1, '2019Q2': 2, '2019Q3': 3},
'B': {'2019Q1': 1, '2019Q2': 3, '2019Q3': 5},
'C': {'2019Q1': 2, '2019Q2': 4, '2019Q3': 6}})
df2 = pd.DataFrame({'A': {'2019Q1': 4, '2019Q2': 5, '2019Q3': 6},
'B': {'2019Q1': 1.5, '2019Q2': 3.3, '2019Q3': 5.6},
'C': {'2019Q1': 2.3, '2019Q2': 4.8, '2019Q3': 6.7}})
我想要像下面这样的输出-
对于 A,输出=
pd.DataFrame({'df1': {'2019Q1': 1, '2019Q2': 2, '2019Q3': 3},
'df2': {'2019Q1': 4, '2019Q2': 5, '2019Q3': 6})
对于 B,输出=
pd.DataFrame({'df1': {'2019Q1': 1, '2019Q2': 3, '2019Q3': 5},
'df2': {'2019Q1': 1.5, '2019Q2': 3.3, '2019Q3': 5.6})
对于 C,输出=
pd.DataFrame({'df1': {'2019Q1': 2, '2019Q2': 4, '2019Q3': 6},
'df2': {'2019Q1': 2.3, '2019Q2': 4.8, '2019Q3': 6.7})
非常感谢您的帮助!
【问题讨论】: