我有一个看起来像这样的系列
2014 7 2014-07-01 -0.045417
8 2014-08-01 -0.035876
9 2014-09-02 -0.030971
10 2014-10-01 -0.027471
11 2014-11-03 -0.032968
12 2014-12-01 -0.031110
2015 1 2015-01-02 -0.028906
2 2015-02-02 -0.035563
3 2015-03-02 -0.040338
4 2015-04-01 -0.032770
5 2015-05-01 -0.025762
6 2015-06-01 -0.019746
7 2015-07-01 -0.018541
8 2015-08-03 -0.028101
9 2015-09-01 -0.043237
10 2015-10-01 -0.053565
11 2015-11-02 -0.062630
12 2015-12-01 -0.064618
2016 1 2016-01-04 -0.064852
我希望能够从日期中获取行的索引值。类似的东西:
myseries.loc(axis=0)[:,:,'2015-10-01'].
并返回15
答案 0 :(得分:2)
使用.get_loc
并传递索引:
In [52]:
s.index.get_loc(s.loc[:,:,'2015-10-01'].index[0])
Out[52]:
15
你必须在这里得到特定的索引元组值,通过索引第一个索引值来返回元组:
In [54]:
s.loc[:,:,'2015-10-01'].index[0]
Out[54]:
(2015, 10, '2015-10-01')
如果你没有这样做,你可以得到所有这些:
In [55]:
s.loc[:,:,'2015-10-01'].index
Out[55]:
MultiIndex(levels=[[2014, 2015, 2016], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], ['2014-07-01', '2014-08-01', '2014-09-02', '2014-10-01', '2014-11-03', '2014-12-01', '2015-01-02', '2015-02-02', '2015-03-02', '2015-04-01', '2015-05-01', '2015-06-01', '2015-07-01', '2015-08-03', '2015-09-01', '2015-10-01', '2015-11-02', '2015-12-01', '2016-01-04']],
labels=[[1], [9], [15]],
names=['year', 'month', 'date'])
您无法转到.get_loc