9
比方說,我有以下幾點:前,在大熊貓一定的指標值後獲得的行數
In [1]: import pandas as pd
import numpy as np
df = pd.DataFrame(data=np.random.rand(11),index=pd.date_range('2015-04-20','2015-04-30'),columns=['A'])
Out[1]:
A
2015-04-20 0.694983
2015-04-21 0.393851
2015-04-22 0.690138
2015-04-23 0.674222
2015-04-24 0.763175
2015-04-25 0.761917
2015-04-26 0.999274
2015-04-27 0.907871
2015-04-28 0.464818
2015-04-29 0.005733
2015-04-30 0.806351
我有一個標識單個指數爲有趣一些複雜的方法,例如「2015-04 -25' 。
In [2]: df.loc['2015-04-25']
Out[2]:
A 0.761917
Name: 2015-04-25 00:00:00, dtype: float64
什麼是之前和/或索引值後獲得數n行的最好的方式:我可以使用檢索與該指數的行?
我想什麼做的是一樣的東西:
In[3]: df.getRowsBeforeLoc('2015-04-25',3)
Out[3]:
2015-04-22 0.690138
2015-04-23 0.674222
2015-04-24 0.763175
2015-04-25 0.761917
或等價:
In[3]: df.getRowsAfterLoc('2015-04-25',3)
Out[3]:
2015-04-25 0.761917
2015-04-26 0.999274
2015-04-27 0.907871
2015-04-28 0.464818
(我沒有對應於該行是否沒有強烈的意見包括目標索引值本身)
不錯,簡單!爲了只獲得有限數量的值,我只能這樣做: df.loc [:'2015-04-25']。tail(3) – jkokorian
是的,這是正確的,看到更新的答案 – EdChum
還有一個相關的問題,你也許能夠回答:您如何在目標索引之前或之後獲得單行(或索引)?那麼排除目標本身? – jkokorian