我有两个CSV文件,我想使用pandas数据框基于公共列Date合并它,以下是我为此使用的代码,但是合并后,CSV2列值以NAN格式出现,我不知道不明白问题所在,请任何人用代码或文件解释问题,谢谢
NB:两个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')
输出
答案 0 :(得分:2)
日期时间格式不同,因此首先通过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')