разделение каждой биржевой информации на отдельный фрейм данных - PullRequest
0 голосов
/ 02 июля 2018

Я взял исторические данные 100 акций. Это один файл со всеми тикерами с соответствующими данными. Как выполнить цикл таким образом, чтобы данные каждого тикера отделялись в кадре со своим именем? Я пробовал это, но это не работает.

for ticker in stocks:
    print(ticker)
    tick=pd.DataFrame(data.loc[(data.ticker==ticker)])
    tick['returns']=tick.close.pct_change()

    value='daily_returns_'+str(ticker)
    value=tick[['date']]
    value['returns']=tick['returns']
    print(value)

    ex=str(value)+'.csv'
    value.to_csv(ex)

1 Ответ

0 голосов
/ 02 июля 2018

Произвольные имена переменных считаются плохой практикой. Вместо этого вы можете определить словарь для переменного числа переменных:

dfs = dict(tuple(data.groupby('ticker')))

Затем, если хотите, экспортируйте в csv с помощью повторяющихся элементов словаря:

for k, v in dfs.items():
    v.to_csv(k+'.csv', index=False)
...