получение следующей строки фрейма данных с условием - PullRequest
1 голос
/ 21 мая 2019

Я хочу извлечь значение следующей строки из фрейма данных, установив условие, которому оно будет соответствовать.

Я получил этот фрейм данных:
в:
df = pd.DataFrame.from_csv(file_path) df['Stock Name'] = stock_symbol print(df.head()) df = df.reset_index()
из:

Date   Open    High      Low     ...      Adj Close   Volume  Stock Name                                     ...<br>
1996-12-12  1.81250  1.8125  1.68750     ...       0.743409  1984400        CALM
1996-12-13  1.71875  1.8125  1.65625     ...       0.777510   996800        CALM
1996-12-16  1.81250  1.8125  1.71875     ...       0.750229   122000        CALM
1996-12-17  1.75000  1.8125  1.75000     ...       0.774094   239200        CALM
1996-12-18  1.81250  1.8125  1.75000     ...       0.791151   216400        CALM

Я получил этот код сейчас:
в:
data_from_yahoo=df.loc[df['Date'] == ddate] data_from_yahoo_next_day=df.loc[df['Date'] == ddate].shift(1) print(data_from_yahoo) print(data_from_yahoo_next_day)
из:

Date       Open  High     ...      Adj Close  Volume  Stock Name
5610 2019-04-01  46.700001  47.0     ...      42.987827  846900        CALM
Date  Open  High  Low  Close  Adj Close  Volume Stock Name
5610  NaT   NaN   NaN  NaN    NaN        NaN     NaN        NaN

теперь я хочу получить строку, которая находится после строки «data_from_yahoo», в данном случае это будет строка 5611. проблема в data_from_yahoo_next_day=df.loc[df['Date'] == ddate].shift(1) я думаю.

1 Ответ

1 голос
/ 21 мая 2019

Я считаю, что вам нужно:

data_from_yahoo_next_day = df[df['Date'].shift(1) == ddate]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...