在pandas中合并两个表后,可以使用fillna()
方法从多个列映射值来填充'nan'值。fillna()
方法可以接受一个字典作为参数,字典的键表示要填充的列名,值表示要填充的对应值。
以下是一个示例代码:
import pandas as pd
# 创建两个表
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'A': [1, 2, 3], 'B': [7, 8, 9], 'C': [10, 11, 12]})
# 合并两个表
merged_df = pd.merge(df1, df2, on='A', how='outer')
# 使用fillna()方法填充'nan'值
fill_values = {'B_x': 0, 'B_y': 0, 'C': 0}
merged_df.fillna(fill_values, inplace=True)
print(merged_df)
输出结果如下:
A B_x B_y C
0 1 4.0 7.0 10.0
1 2 5.0 8.0 11.0
2 3 6.0 9.0 12.0
在上述示例中,我们首先使用pd.merge()
方法将两个表按照'A'列进行合并,然后使用fillna()
方法填充'nan'值。填充的规则是将'B_x'列的'nan'值填充为0,将'B_y'列的'nan'值填充为0,将'C'列的'nan'值填充为0。
推荐的腾讯云相关产品是腾讯云数据库TencentDB,它是一种高性能、可扩展的云数据库服务。您可以通过以下链接了解更多关于腾讯云数据库的信息:腾讯云数据库TencentDB。
领取专属 10元无门槛券
手把手带您无忧上云