【发布时间】:2021-07-31 16:38:50
【问题描述】:
假设我们有两个数据框:
df1 = pd.DataFrame(
[["foo",10], ["bar",20]],
columns=["1", "2"],
index=["x", "y"]
)
df2 = pd.DataFrame(
[["foo",10,20], ["bar",20,30], ["foo",10,30]],
columns=["1", "2", "3"],
index=["x", "y", "z"]
)
这会给我们这个:
如果我要将这些数据与两列上的条件合并:
df3 = pd.merge(df1, df2, how='left', on=['1','2'])
这会给我们这个:
如果我希望将与 df2 中的条件匹配的值的平均值输出到 df3,我该怎么做呢? (因此,我不会有两行 foo & 10,而是只有一行 foo & 10,第三列的值是符合条件的两行的平均值)。为了清楚起见,我在下面提供了一张图片:
【问题讨论】:
-
你的合并是什么意思?
标签: python pandas dataframe join merge