我正在建立推荐系统,为此我建立了列联表以了解产品之间的关联。
我的列联表如下所示,例如Tble-1:
a b c d
a 2 1 1 1
b 1 2 2 0
c 1 2 2 0
d 1 0 0 1
这是一个熊猫数据框。
由于我正在处理流数据,因此每当我获得新数据时都需要更新此列联表。
假设我得到了新的列联表,例如表2:
a b c e
a 2 1 1 4
b 1 1 2 0
c 1 2 4 2
e 1 3 0 4
我需要添加两个列联表,即表1 +表2,这将产生一个新表,如下所示:
a b c d e
a 4 2 2 1 4
b 2 3 4 0 0
c 2 4 6 1 4
d 1 0 0 1 0
e 1 3 0 0 4
如何在python熊猫中实现这一目标?
最佳答案
将DataFrame.add
与参数fill_value=0
用作不匹配的值,然后替换不存在的值并在必要时转换为整数:
df = df1.add(df2, fill_value=0).fillna(0).astype(int)
print (df)
a b c d e
a 4 2 2 1 4
b 2 3 4 0 0
c 2 4 6 0 2
d 1 0 0 1 0
e 1 3 0 0 4
关于python - 在Python中添加两个列联表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55143278/