Фильтрация длинного списка данных из IEX - PullRequest
0 голосов
/ 01 октября 2018

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

enter image description here

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

Также обратите внимание, что iexfinance использует фильтр_, поскольку фильтр - это зарезервированное слово в Python

 print(losers(filter_=['symbol','close']))

enter image description here

Любая помощь будет оценена.Спасибо, парни!

1 Ответ

0 голосов
/ 01 октября 2018

Вы получаете список из get_market_losers(), который вам нужно перебрать:

for loser in losers:
    print(loser["close"], loser["symbol"], loser["sector"])

Распечатка:

9.1  NEWA  Industrials
4.75 LCI   Healthcare
2.3  SN    Energy
8.51 SWZ   Financial Services
2.95 PES   Energy
8.1  EGAN  Technology
8.58 CIFS  Financial Services
1.76 GERN  Healthcare
1.03 BW    Technology
6.18 JILL  Consumer Cyclical

Чтобы получить все ваши данные виспользуйте этот фрейм данных (столбцы уже названы в соответствии с функциями IEX):

df = pd.DataFrame(losers)
# printout transposed so that you see the long list of features
df.head(1).T

Распечатка:

avgTotalVolume      543967
calculationPrice    close
change              -0.36
changePercent       -0.03805
...

Прямой фильтр из фрейма данных:

df.loc[:, ["close", "symbol", "sector"]]

Распечатка:

enter image description here

...