我正在使用python对过去9年的Nifty日内数据进行回溯测试。为此,我需要准确的日期和时间列,以便我可以生成我的购买和购买卖出信号并对其进行回测。
这个数据给了我Date&在不同列中的时间,我想合并两列,我想生成一个时间戳,如DD / MM / YYY HH:MM:SS
我有以下代码作为输入。
import pandas as pd
import csv
from datetime import datetime
df = pd.read_csv('ticks2.csv', parse_dates=['Date'])
print(df.head())
type(df)
df.dtypes
输出
Symbol Date Time Open High Low Close
0 NIFTY 2008-01-01 09:55:00 6138.60 6154.60 6138.60 6148.90
1 NIFTY 2008-01-01 09:56:00 6149.75 6149.75 6132.80 6132.80
2 NIFTY 2008-01-01 09:57:00 6138.25 6138.25 6127.95 6127.95
3 NIFTY 2008-01-01 09:58:00 6127.15 6127.15 6120.90 6120.90
4 NIFTY 2008-01-01 09:59:00 6118.05 6118.05 6113.55 6113.90
Out[28]:
Symbol object
Date datetime64[ns]
Time object
Open float64
High float64
Low float64
Close float64
dtype: object
答案 0 :(得分:0)
查看pandas文档,您可以在创建数据框时将这些组合在一起,您可以使用两个列上的解析日期,如下所示。
df = pd.read_csv('ticks2.csv', parse_dates=[['Date', 'Time']])
有关文档中提供的read_csv的更多信息。 http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html