如果需要的话,Pandas会获得下一个可用的日期时间索引

时间:2017-11-11 13:53:56

标签: python pandas dataframe indexing

所以我有一个DataFrame,f,带有每周索引:

            Open   High    Low  Close      Volume
Date    


2017-07-24  5.05  5.120  5.010   5.19  16306737.0
2017-07-31  5.31  5.475  5.280   5.24  45182199.0
2017-08-07  5.69  5.740  5.640   5.67  10167161.0
2017-08-14  5.65  5.680  5.440   5.76  28296416.0
2017-08-21  5.49  5.605  5.480   5.55  16126060.0
2017-08-28  6.00  6.030  5.940   5.95  19398271.0
2017-09-04  5.86  5.965  5.845   6.01  20218389.0
2017-09-11  5.98  6.030  5.830   5.98  15812289.0
2017-09-18  5.71  5.770  5.540   5.81  30786508.0
2017-09-25  5.16  5.190  5.090   5.17  13641128.0

我想解析一个datetime对象,如果该datetime对象存在于索引中,那么我将使用该行中的数据,否则如果它在索引中不存在则抓住我的下一行解析日期将是。

例如:如果我解析f.loc[(datetime.datetime(2017, 09, 07)] 那不是在索引中所以我希望它抓住行

2017-09-11 5.98 6.030 5.830 5.98 15812289.0

因为那是9月7日之后的下一个索引日期。

1 个答案:

答案 0 :(得分:1)

一个简单的解决方案是使用Promise.all(promiseArr) .then((res) => //res.json here) .catch(err => //err res here)

np.searchsorted

<强>详情

df.iloc[[np.searchsorted(df.index, '2017-09-07')]]  

            Open  High   Low  Close      Volume
Date                                           
2017-09-11  5.98  6.03  5.83   5.98  15812289.0