左侧合并日期栏在熊猫行为奇怪

问题描述 投票:1回答:1

我有两个数据框如下:

DateTime = pd.date_range('2011-11-23T09:00:00', periods=39774, freq='30T')
Emptydf = pd.DataFrame({'DateTime':DateTime})

因此大小将是(39774, 1)我正在读取csv文件中的第二个数据框,该文件具有某些日期的销售,并且大小和数据结构如图所示

df1.shape   
(38375, 2)

df1.dtypes 

DateTime              datetime64[ns]
Sale                  float32
dtype: object

当我执行以下代码时:

df2=pd.merge(Emptydf,df1,how='left',on='DateTime')

我得到了奇怪的结果。根据文档,df2的大小应该是Emptydf,但大小是:df2.shape (39800, 2)有人可以告诉我我做错了什么? (两个数据框中的DateTime都是数据类型)

python pandas
1个回答
2
投票

尝试在df1中删除DateTime duplicates

为此您可以使用:

df1.drop_duplicates(subset='DateTime', keep='first', inplace=True)
© www.soinside.com 2019 - 2024. All rights reserved.