首页 > 解决方案 > 从 DataFrame 中删除带有 datetime 对象分钟数的行

问题描述

我有一个 DataFrame sy_wx,如下所示:

在此处输入图像描述

我希望删除任何分钟不等于零的行看起来像。

在此处输入图像描述

使用

sy_wx = sy_wx[sy_wx['time_utc'].minute == 0]

给出 AttributeError: 'Series' object has no attribute 'minute' 错误

In [50]: sy_wx['time_utc'][1].minute
Out[50]: 30

我哪里错了?

标签: pythonpandasdataframedatetime

解决方案


首先,确保time_utc列的数据类型是 DateTime。您可以使用以下代码将 object(str) 转换为 DateTime:

sy_wx['time_utc'] = pd.to_datetime(sy_wx['time_utc'])

然后使用此代码过滤您的数据:

sy_wx = sy_wx[sy_wx['time_utc'].dt.minute == 0]

dt之前失踪了minute


推荐阅读