首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如果日期相同,如何从另一个dataframe填充列值

如果日期相同,可以使用pandas库中的merge()函数将两个dataframe按照日期进行合并,然后使用fillna()函数将缺失的列值填充。

具体步骤如下:

  1. 导入pandas库:import pandas as pd
  2. 定义两个dataframe,假设一个为df1,另一个为df2。
  3. 使用merge()函数将两个dataframe按照日期进行合并:merged_df = pd.merge(df1, df2, on='日期', how='left')
    • 参数on='日期'表示按照日期列进行合并
    • 参数how='left'表示以df1为基准,保留df1的所有行
  • 使用fillna()函数将缺失的列值填充:merged_df['列名'].fillna(merged_df['另一个列名'], inplace=True)
    • 参数'列名'表示需要填充的列名
    • 参数'另一个列名'表示用于填充的另一个列名
    • 参数inplace=True表示在原dataframe上进行修改

完整代码示例:

代码语言:txt
复制
import pandas as pd

# 定义两个dataframe
df1 = pd.DataFrame({'日期': ['2022-01-01', '2022-01-02', '2022-01-03'],
                    '数值1': [1, 2, 3]})
df2 = pd.DataFrame({'日期': ['2022-01-01', '2022-01-02', '2022-01-03'],
                    '数值2': [4, 5, 6]})

# 合并两个dataframe
merged_df = pd.merge(df1, df2, on='日期', how='left')

# 填充缺失的列值
merged_df['数值1'].fillna(merged_df['数值2'], inplace=True)

print(merged_df)

输出结果:

代码语言:txt
复制
           日期  数值1  数值2
0  2022-01-01  1.0    4
1  2022-01-02  2.0    5
2  2022-01-03  3.0    6

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云数据库(TencentDB):https://cloud.tencent.com/product/cdb
  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云云原生容器服务(TKE):https://cloud.tencent.com/product/tke
  • 腾讯云人工智能(AI):https://cloud.tencent.com/product/ai
  • 腾讯云物联网(IoT):https://cloud.tencent.com/product/iotexplorer
  • 腾讯云移动开发(移动推送、移动分析、移动测试等):https://cloud.tencent.com/product/mobile
  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云区块链服务(BCS):https://cloud.tencent.com/product/bcs
  • 腾讯云元宇宙(Tencent XR):https://cloud.tencent.com/product/xr
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的沙龙

领券