启用日期更改功能,而不是使用熊猫数据在代码中手动更改日期

时间:2019-05-04 20:23:29

标签: python pandas datetime

动机:我在目标日期所在的位置有多个代码。我一直在手动更改所有目标日期以运行代码。但您知道,如果我能使它自动化,那就太好了。

我的审判 1.成功:我能够通过使用timedelta使目标日期生效。 2.错误:但是,当我将其插入代码中时,数据似乎不正确。对于下面的示例,我将目标日期设置为'2019-03-29',但是从'2019-01-01'开始打印数据

任何见解都会非常可观。

enter image description here

enter image description here

import datetime as dt
import pandas as pd
import pandas_datareader.data as web
import csv
from datetime import datetime, timedelta

#data import
headers = ['ticker','per','date','time','open','high','low','close','vol']
df = pd.read_csv(r"C:\\Users\\x230\\Downloads\\NQ_190101_190531.csv", sep = ';', names=headers, skiprows=[0])
df['date_time'] = df['date'].map(str) + ' ' + df['time'].map(str)               #combine date and time data
df['date_time'] = pd.to_datetime(df['date_time'], format='%d/%m/%y %H:%M:%S')
df.set_index('date_time',inplace=True)                                          #set time back as index

date_start = '2019-03-28'
date_target = (datetime.strptime(date_start, '%Y-%m-%d') + timedelta(days=1)).strftime('%Y-%m-%d')

#selecting data range
df = df.loc[print(date_target,'01:01:00'):print(date_target,'22:59:00')]
df.head()

1 个答案:

答案 0 :(得分:0)

找到一个简单的解决方案。如Chris所述,附加字符串可解决此问题。见下文。谢谢。

enter image description here