加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 使用pandas读取.csv文件时指定时间戳措辞格式?

发布时间:2020-12-20 13:06:15 所属栏目:Python 来源:网络整理
导读:我有一个.csv文件,其中有数千个条目由数据记录器创建. 格式或多或少是这样的: time | data01/07/2015 12:25:45 | 356.2401/07/2015 12:25:50 | 357.2401/07/2015 12:25:55 | 351.2401/07/2015 12:26:00 | 357.2001/07/2015 12:26:05 | 356.32... 当我使用pa
我有一个.csv文件,其中有数千个条目由数据记录器创建.

格式或多或少是这样的:

time                | data
01/07/2015 12:25:45 | 356.24
01/07/2015 12:25:50 | 357.24
01/07/2015 12:25:55 | 351.24
01/07/2015 12:26:00 | 357.20
01/07/2015 12:26:05 | 356.32
...

当我使用pandas读取文件时

import pandas as pd
df = pd.read_csv(filename,parse_dates=True,infer_datetime_format=True)

某些日期由于某种原因被识别为错误,因此我想手动指定日期格式字符串,格式为de format string format_str =’%d /%m /%Y%H:%M:%S’

我怎样才能做到这一点?

解决方法

The pandas.read_csv function不仅采用parse_dates =参数,还采用date_parser =参数.使用date_parser =参数,您可以指定自己的函数来解析日期.

像这样:

def myparser(x):
    return datetime.strptime(x,'%d/%m/%Y %H:%M:%S')

df = pd.read_csv(filename,date_parser=myparser)

这应确保始终仅使用该格式解析日期.

最好在读取csv时解析日期,而不是之后,因为你不必先将所有字符串加载到内存中,然后转换它们,而是在运行时转换它们.

它更有内存效率.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读