首页 > 解决方案 > 将熊猫中的两个 csv 文件合并为 NAN 值

问题描述

我有两个 CSV 文件,我想使用 pandas 数据框基于公共列 Date 合并它,下面是我为此使用的代码,但是在合并后,CSV2 列值作为 NAN 出现,我不明白问题,请任何人解释代码或文件的问题,谢谢

注意:两个 CSV 的行号不相同(C02 的行号 = 85 和 SG_Data:115)CSV1

import pandas as pd

df1 = pd.read_csv('C02B.csv')
df2 = pd.read_csv('S2_Imprint.csv')

cd = df1.merge(df2, how='left', on='Date')

在此处输入图像描述

CSV2 在此处输入图像描述

输出

输出

标签: pythonpandascsv

解决方案


parse_dates日期时间有不同的格式,所以首先通过参数将两列解析为日期时间:

df1 = pd.read_csv('C02B.csv', parse_dates=['Date'])
df2 = pd.read_csv('S2_Imprint.csv', parse_dates=['Date'], dayfirst=True)

然后将时间删除Series.dt.floor到用于合并的新列:

df1['Date1'] = df1['Date'].dt.floor('d')
d = df1.merge(df2, how='left', left_on='Date1', right_on='Date')

推荐阅读