【问题标题】:Unable to Parse pandas Series to datetime无法将熊猫系列解析为日期时间
【发布时间】:2018-04-22 13:40:10
【问题描述】:

我正在导入一个包含 datetime 列的 csv 文件,导入 csv 后,我的数据框将包含类型为 pandas.Series 的 Dat 列,我需要另一个包含工作日的列:

import pandas as pd
from datetime import datetime

data = 
pd.read_csv("C:/Users/HP/Desktop/Fichiers/Proj/CONSOMMATION_1h.csv")
print(data.head())

所有数据都还可以,但是当我执行以下操作时:

data['WDay'] = pd.to_datetime(data['Date'])
print(type(data['WDay']))
# the output is 
<class 'pandas.core.series.Series'>

数据没有转换为日期时间,所以我无法得到工作日。

【问题讨论】:

  • 您需要调用data['WDay'].dtype 来查看数据类型,您看到的是pandas Series 可能是datetimes
  • 完全OK输出,DataFrame的每一列都是Series;)
  • 你的工作日密码是什么?也许问题是别的。
  • 感谢大家,我得到了 datetime64[ns] 类型,之后我使用了 data['WDay'] = data['WDay'].weekday,我得到了一个错误:'Series' object没有属性“工作日”

标签: python-3.x pandas datetime


【解决方案1】:

问题是你需要dt.weekday.dt

data['WDay'] = data['WDay'].dt.weekday

没有dt 用于DataetimeIndex(不是你的情况)-DatetimeIndex.weekday

data['WDay'] = data.index.weekday

【讨论】:

  • 谢谢你的工作,我终于明白这个日期时间的东西是如何工作的
【解决方案2】:

使用命令data.dtypes 来检查列的类型。

【讨论】:

    猜你喜欢
    • 2018-11-03
    • 2016-10-21
    • 1970-01-01
    • 2020-12-16
    • 2018-12-08
    • 1970-01-01
    • 2017-08-05
    相关资源
    最近更新 更多