Ошибка при считывателе данных pandas при поиске акций с периодом в тикере - PullRequest
0 голосов
/ 25 мая 2019

Получение ошибки при выполнении этого кода:

import datetime as dt
import pandas_datareader.data as web

start = dt.datetime(2018,12,1)
end = dt.datetime.now()
df = web.DataReader('brk.b', 'yahoo', start, end)

print(df)

Я получаю сообщение «Ошибка ключа:« Дата »»

Это единственная акция в SP 500, которая не является строгописьма и поэтому моя программа не будет работать.Все остальные акции, в буквах которых есть только буквы, работают нормально.Я добавил попробовать / исключить, чтобы пропустить этот запас, но я хочу знать, почему это происходит и как я могу исправить, если это возможно.Заранее спасибо

Редактировать: Выяснилось, как работает обходной путь, вот правка:

изменить:

'brk.b'

на:

'brk.b'.replace('.','-')

С заменой, если у вас большой список тикеров, вы можете просто вызвать свой список, использовать замену, чтобы поменять периоды на тире, и он сможет получить данные для этой компании

1 Ответ

0 голосов
/ 25 мая 2019

На основании этой информации: https://github.com/pydata/pandas-datareader/issues/282. Есть несколько акций, которые пришлось вручную добавить '-' (или заменить '.' На '-'), чтобы начать работать с Yahoo, например, BF-B, BRK-B, FCE-A, JW-A, LGF-A, LGF-B, PBR-A, RDS-A, RDS-B.

Надеюсь, это поможет вам.

...