python/pandas开始日期+;时间,创建日期时间索引

python/pandas开始日期+;时间,创建日期时间索引,python,pandas,dataframe,Python,Pandas,Dataframe,目前,我有一个如下所示的数据帧: df = Open High Low Close TotalVolume 0 113.40 113.54 113.40 113.54 7237 1 113.54 113.58 113.52 113.57 10099 2 113.59 113.81 113.52 113.78 13827 3 113.76 113.94 113.75 113.92

目前,我有一个如下所示的数据帧:

df = 
     Open    High     Low   Close  TotalVolume
0  113.40  113.54  113.40  113.54         7237
1  113.54  113.58  113.52  113.57        10099
2  113.59  113.81  113.52  113.78        13827
3  113.76  113.94  113.75  113.92        16129
4  113.91  114.01  113.88  113.97        27052
5  113.97  114.11  113.92  114.01        24925
6  114.00  114.15  113.99  114.04        13461
7  114.06  114.14  113.94  113.94        10702
8  113.92  113.99  113.86  113.99         5538
9  113.96  113.96  113.85  113.86        14000
它不一定非得是datetime索引,但我觉得这是最简单的。从这里我有一个变量startDate,它遵循这个格式
startDate=“03-20-2018t14:00”

从这里,这是微小的数据,为了运行另一个程序,格式必须遵循这一点,但这是我希望的最终结果:

updated_df =
Date          Time     Open    High     Low   Close  TotalVolume
03/20/2018   14:00   113.40  113.54  113.40  113.54         7237
03/20/2018   14:01   113.54  113.58  113.52  113.57        10099
03/20/2018   14:02   113.59  113.81  113.52  113.78        13827
03/20/2018   14:03   113.76  113.94  113.75  113.92        16129
03/20/2018   14:04   113.91  114.01  113.88  113.97        27052
03/20/2018   14:05   113.97  114.11  113.92  114.01        24925
03/20/2018   14:06   114.00  114.15  113.99  114.04        13461
03/20/2018   14:07   114.06  114.14  113.94  113.94        10702
03/20/2018   14:08   113.92  113.99  113.86  113.99         5538
03/20/2018   14:09   113.96  113.96  113.85  113.86        14000
您需要将
开始
时段
频率
参数一起使用

df['datetime'] = pd.date_range(start='03-20-2018t14:00', periods=len(df), freq="1min")
或者,如果希望将它们分开,可以从
DatetimeIndex
中提取
date
time
,如下所示:

datetime_col = pd.date_range(start='03-20-2018t14:00', periods=len(df), freq="1min")
df['Date'] = datetime_col.date
df['Time'] = datetime_col.time
有关详细信息,请参阅

输出:

         Date      Time    Open    High     Low   Close  TotalVolume
0  2018-03-20  14:00:00  113.40  113.54  113.40  113.54         7237
1  2018-03-20  14:01:00  113.54  113.58  113.52  113.57        10099
2  2018-03-20  14:02:00  113.59  113.81  113.52  113.78        13827
3  2018-03-20  14:03:00  113.76  113.94  113.75  113.92        16129
4  2018-03-20  14:04:00  113.91  114.01  113.88  113.97        27052
5  2018-03-20  14:05:00  113.97  114.11  113.92  114.01        24925
6  2018-03-20  14:06:00  114.00  114.15  113.99  114.04        13461
7  2018-03-20  14:07:00  114.06  114.14  113.94  113.94        10702
8  2018-03-20  14:08:00  113.92  113.99  113.86  113.99         5538
9  2018-03-20  14:09:00  113.96  113.96  113.85  113.86        14000

您的答案中没有涉及日期时间格式转换。
2018年1月1日14:00
,请不要使用您自己的数据。@Wen将UTC时间转换为EST的最简单方法是什么?@lee.edward01@Wen,编辑了答案。但是,正如文档所示,我可以将字符串作为日期传递,而不必将
datetime
对象作为startdate传递。如果我错了,请纠正我。谢谢。@HarvIpan我想这是输入'03-20-2018t14:00'而不是'03-20-2018 14:00'