1.引入

时间是pandas数据的主要索引。中文网站上下载的数据含有中文日期,其中包含年月日。如下图所示:

沪深300指数的数据含有中文,需要处理成python的 datetime格式才能放入回测框架中. 方法有很多,关键如何优雅的使用pythonic的完成转换,需要考虑。

2.正则表达式提取年月日信息+map函数

用正则表达式提取年月日信息,然后改写成英文格式

def date_transder(my_str ):

pattern = re.compile('(\d+)\D(\d+)\D(\d+)')

dd = pattern.findall(my_str)

date_strr = dd[0][2]+'/'+dd[0][1]+'/'+dd[0][0]

return date_strr

使用map function对索引数据里面的中文日期一一处理。

假设数据块存放在dataframe df 中。 df.index.values极为需要转换的日期。使用map函数实现数据间的映射。

dates = list(df.index.values)

dates = list(map(date_transder, dates))

3.完整代码

import re

import pandas as pd

import os

def date_transder(my_str ):

pattern = re.compile('(\d+)\D(\d+)\D(\d+)')

dd = pattern.findall(my_str)

date_strr = dd[0][2]+'/'+dd[0][1]+'/'+dd[0][0]

return date_strr

path1 = os.path.abspath('.')

csv_dir = 'data_csv'

csv_dir = os.path.join(path1, csv_dir)

s='hs300'

df = pd.read_csv(

os.path.join(csv_dir, '%s.csv' % s),

header=0, index_col=0

)

dates = list(df.index.values)

dates = list(map(date_transder, dates))

df = df.reset_index()

df['date'] = dates

df = df.set_index('date')

df = df.sort_index()

df.to_csv('hs300.csv')

4. 最终结果

重新索引排序过后的数据如下图。

沪深300index 数据下载地址:

python 日期 格式转换 英文_量化数据预处理-中文日期(含)转英文日期相关推荐

  1. es6 日期字符串转日期_量化数据预处理-中文日期(含)转英文日期

    1.引入 时间是pandas数据的主要索引.中文网站上下载的数据含有中文日期,其中包含年月日.如下图所示: 沪深300指数的数据含有中文,需要处理成python的 datetime格式才能放入回测框架 ...

  2. word日期格式批量修改_如何设置Word中使用的默认短日期和长日期和时间格式

    word日期格式批量修改 Inserting the date and time that automatically updates into a document can be useful. T ...

  3. 【SSM - SpringMVC篇】日期格式转换 把英文日期转化为数字日期

    日期格式转换 为啥要进行日期格式转换? springMVC默认不支持页面上的日期字符串到后台的Date的转换 有两种方式 第一种使用注解 第二种编写 转换类,配置到springMVC(了解) 第一种使 ...

  4. python日期格式转换_python中有关时间日期格式转换问题

    每次遇到pandas的dataframe某列日期格式问题总会哉坑,下面记录一下常用时间日期函数.... 1.字符串转化为日期 str->date import datetime date_str ...

  5. oracle 英文日期格式转换中文日期格式

    oracle 英文日期格式转换中文日期格式 02-Mar-2010 这个格式是美国格式,可以使用如下语句转换成中文格式 2010/3/2: SELECT TO_DATE('02 Mar 2010 06 ...

  6. abap日期函数_ABAP - 日期格式转换 ABAP常用日期处理函数

    ABAP - 日期格式转换 现在提供以下一些日期格式转换的函数: Below are several FMs which can be used to convert date format. 1. ...

  7. ddmmyy日期格式是多少_如何在Excel 2013/2016/2019中将mmddyyyy文本转换为普通日期格式...

    本文将讲述如何将非标准日期格式或文本转换为Excel中的标准日期.如果您的日期为mmddyy文本格式,并且您希望使用Excel公式将其更改为mm / dd / yyyy的正常日期格式.如何在Excel ...

  8. java 导入excel 日期格式转换

    java 导入excel 日期格式转换 导入日期格式后 获取到的value值为 数值或小数值 直接上硬货 cell = row.getCell(4);String go_time = getCellV ...

  9. Oracle日期格式转换 to_date,to_char,to_timetamp 相互转换

    Oracle日期格式转换 to_date,to_char,to_timetamp 相互转换 一.概述 1.本文主要记录Oracle数据库中,常见的日期格式转换.使用 to_char函数,将日期转换为字 ...

最新文章

  1. 深度神经网络在NLP的应用!
  2. Django不能ip调试访问
  3. ubutnu 下SVN 提交时忽略某些文件或文件夹
  4. keep公众号就“借鉴”原创文章致歉:将停更一周
  5. css高度自适应以及高度塌陷总结
  6. svn 使用TortoiseSVN server搭建本地SVN服务器
  7. 1、Spring Boot 中 SpringApplication初始化(ok)
  8. 聚奎中学2021高考成绩查询,江津2017全体高考考生的喜报
  9. Julia: [1 +j] ==[1 + j] ?
  10. 三天打鱼两天晒网(入门级算法)(C语言)
  11. eclipse java常用插件_高阶程序员必备25个最好的免费Eclipse插件
  12. Filenet 周报(2019.12.23-2020.01.05)
  13. cms php套件,PHPCMS服务器套件(Pc_webserver)
  14. 内容下沉新时代:在一二线做品质,去三四线接地气
  15. 扫雷游戏(可展开,可标记)C语言实现
  16. 如何保证战略落地_如何保障企业战略落地实施
  17. Openstack-nove
  18. 数据结构课程设计--图书管理系统
  19. 黎曼zeta函数 详细介绍 (英文版)
  20. 双回路隔离输出DC/DC高压电源模块

热门文章

  1. 雷曼java_java入门(2)--数据类型
  2. Java 接口编程题
  3. python3.6 try except,python中try except处理程序异常的三种常用方法
  4. mnesia mysql性能_Mnesia
  5. 用户自定义属性表结构设计_属性类型定制及其妙用
  6. hbase scan超时设置_HBase学习之路 (六)过滤器
  7. Linux如何查找解压文件,linux命令(文件搜索和压缩解压命令)
  8. 树莓派 Learning 002 装机后的必要操作 --- 03 替换软件源
  9. springmvc+mongodb+maven 项目搭建配置
  10. Android 加入一个动作按钮