【发布时间】:2020-03-03 12:05:02
【问题描述】:
如何.merge 2 df, 1 column 来匹配 2 column ??
- 我们的目标是合并 2 个 df,以便将 REF 表中每个活动 ID 的记录计数到按 ID 划分的数据中。
- 问题 .merge 只是将 1 列与 1 列进行比较
数据乱七八糟,对于某些行有 id 名称而不是 id。
如果我想将 1 列合并到 1 列,或者将 2 列合并到 2 列,但不能将 1 列合并到 2 列
参考表
g_spend =
campaignid id_name cost
154 campaign1 15
155 campaign2 12
1566 campaign33 12
158 campaign4 33
数据
cw =
campaignid
154
154
155
campaign1
campaign33
1566
158
campaign1
campaign1
campaign33
campaign4
期望的输出
g_spend =
campaignid id_name cost leads
154 campaign1 15 5
155 campaign2 12 0
1566 campaign33 12 3
158 campaign4 33 2
我做了什么..
# Just work for one column
cw.head()
grouped_cw = cw.groupby(["campaignid"]).count()
grouped_cw.rename(columns={'reach':'leads'}, inplace=True)
grouped_cw = pd.DataFrame(grouped_cw)
# now merging
g_spend.campaignid = g_spend.campaignid.astype(str)
g_spend = g_spend.merge(grouped_cw, left_on='campaignid', right_index=True)
【问题讨论】:
-
@Quang Hoang ,您知道我如何做到这一点吗?我在另一个问题中错过了这一步,我需要潜在客户的数量才能完成它
-
您是如何在所需的输出数据框中获得这些 Lead 列值的,对于活动 ID 154,cw 中只有 2 个值。你是怎么得到 5 个的?