我有两个数据帧(df1,df2)都在其中包含id列。 Id在df1中不重复,但在df2中重复。数据集df1有61列(由零初始化),而df2有3列(Id,Count,Code)。 df2的Code字段有60个不同的值,它们是df1的列。我想通过匹配df1上的ID(名称与df2的代码相同的df1的列)来插入df2的计数。
我尝试使用循环,但是由于数据集非常大,这会花费很多时间。
df1:
id c1 c2 c3
1 0 0 0
2 0 0 0
df2:
id Code Count
1 c1 2
1 c2 4
1 c1 3
#my code
for row in df1.to_dict("records"):
for r in df2.to_dict("rec"):
if row['id']==r['id']:
co=r['Code']
row[co]+=r['Count']
output req:
df1:
id c1 c2 c3
1 5 4 0
2 0 0 0