В настоящее время я работаю над проектом, связанным с финансовыми данными. У меня есть фрейм данных, содержащий ряд фундаментальных переменных, а также доходность акций для разных компаний, например:
year ticker tot_assets return
0 1999 AAPL 10.345 0.1294
1 2000 AAPL 10.988 0.1577
2 2001 AAPL 12.003 0.0782
.. ... ... ... ...
34521 2017 GMBO 0.893 0.2209
34522 2018 GMBO 1.206 0.1001
.. ... ... ... ...
200344 2012 ZZ 3.789 0.0032
200344 2013 ZZ 3.021 -0.0346
То, что я пытался сделать без успеха, - это сопоставить каждую компанию ticker
с другим в df на основе ближайшего значения tot_assets
в год t-1. Таким образом, создайте две новые колонки, где у одной есть ticker
соответствующей компании, а также returns
в момент времени t. Таким образом, мы выполняем сопоставление в момент времени t-1, но сообщаемые результаты относятся к моменту времени t.
Так что это должно выглядеть примерно так:
year ticker tot_assets return m_ticker m_return
0 1999 AAPL 10.345 0.1294 AA 0.0890
1 2000 AAPL 10.988 0.1577 AA 0.1666
2 2001 AAPL 12.003 0.0782 TSLA 0.3470
.. ... ... ... ... ... ...
34521 2017 GMBO 0.893 0.2209 AIR 0.0032
34522 2018 GMBO 1.206 0.1001 CECE 0.1123
.. ... ... ... ... ... ...
200344 2012 ZZ 3.789 0.0032 ASKI 0.0432
200344 2013 ZZ 3.021 -0.0346 ASKI 0.0339
Надеюсь, я достаточно ясно в моем объяснении: P Может быть, это причина, почему у меня были проблемы! Я не могу показать вам df, потому что он имеет более 200 000 наблюдений, но я надеюсь, что приведенные выше концепции помогут:)
Заранее спасибо!