让我建议“添加”并指定填充值 0。这比之前建议的答案有一个优势,因为当两个 Dataframe 具有不同的唯一键集时,它将起作用。
# Create frames
df1 = pd.DataFrame(
{'User_id': ['a', 'a', 'b', 'c', 'c', 'd'], 'a': [1, 1, 2, 3, 3, 5]})
df2 = pd.DataFrame(
{'User_id': ['a', 'a', 'b', 'b', 'c', 'c', 'c'], 'a': [1, 1, 2, 2, 3, 3, 4]})
现在添加两组values_counts()。这fill_value
参数将处理出现的任何 NaN 值,在本例中,出现在df1
, 但不是df2
.
a = df1.User_id.value_counts()
b = df2.User_id.value_counts()
a.add(b,fill_value=0)