Сдвиг строки без потери последней записи данных - PullRequest
0 голосов
/ 27 июня 2019

Я прогнозирую цену биржевого тикера VIX на завтра. Я создаю "VIX Price Tomorrow", созданный из "VIX High", но смещенный на -1. Я знаю, как удалить последнюю строку, чтобы удалить NAN, созданный -1 .shift. Моя проблема в том, что когда я удаляю нижний ряд, я теряю дату и время, необходимые для прогнозирования цены акций завтра. В основном я прогнозирую сегодняшнюю цену VIX вместо завтрашнего дня. Я попытался вставить фиктивную строку, а затем сдвинуть ее, но это кажется очень липким, и я думаю, что это негативно влияет на мои прогнозы.)

Вот что я попробовал: 1. Добавьте фиктивную строку 2. .shift (-1) 3. удалить строку NAN

Шаг 1.

Добавление 1 строки данных Dummy в convert_data_final_df - поэтому, когда мы отбросим, ​​NAN исчезнет
dummy_last_row = converted_data_final_df.iloc[-1:] #grab the last row of 'converted_data_final_df'
print(dummy_last_row)
converted_data_final_df = converted_data_final_df.append(dummy_last_row

Шаг 2.

Сдвиньте «VIX High_Price_Tщё» на -1, чтобы мы могли использовать его для прогнозирования завтрашней цены
converted_data_final_df['VIX High_Price_Tomorrow'] = 
converted_data_final_df['VIX High'].shift(-1)

Шаг 3.

Затем я удаляю лишнюю строку
converted_data_final_df = converted_data_final_df.dropna()

Вышеуказанное работает и оставляет мне данные текущей даты. Я думаю, что это липко и, вероятно, не правильно.

Мне нужно иметь дату и время, чтобы прогнозировать завтрашнюю цену акций. Простое удаление строки приведет к удалению нужной мне записи даты.

Есть ли лучшие способы справиться с этим?

Вот ссылка на весь блокнот Jupyter со всем моим кодом (полагал, что это лучше, чем вставка большого количества кода и файлов)

https://github.com/joshuakemp1/Vix_Price_Tomorrow

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...