У меня есть более 1000 текстовых файлов, каждый из которых имеет два столбца, первый - «Даты», второй - «цены» (для соответствующей акции). Я ищу способ выяснить, какие акции торгуются вверх, вниз или в боковом направлении. Я полагаю, что для этого потребуется создать линию тренда для каждого файла, а затем найти наклон этой линии тренда, но моя математика не сильна (пока), поэтому я не уверен. Пока у меня есть следующий код:
filelist = os.listdir(r'InsertFilePath')
filepath = r'InsertFilePath'
dic1 = {}
for file in filelist:
df = pd.read_csv(filepath + file,sep='\t')
dic1[file]= df
#changes the column headers to string 'Dates' and 'Prices'
for key,value in dic1.items():
value.rename(columns={value.columns[0]:'Dates',value.columns[1]:'Prices'},inplace=True)
Итак, по сути, у меня есть словарь с DataFrame для каждой акции в качестве значений и биржевой код (имя файла) в качестве ключа.
Я пробовал это:
lst1=[]
lst2=[]
for key,value in dic1.items():
lst1.append([key,value['Prices']])
lst2.append([key,value['Dates']])
sns.lmplot(x=lst2,y=lst1,data=dic1,fit_reg=True)
Но это дает мне ошибки, и я много играл с этим.
Итак, мои вопросы: как мне найти линию тренда для словарь Dataframes с датами, являющимися первым столбцом и ценами, являющимися вторым (возможно, я должен установить даты как индекс)? Как я могу определить наклон этих линий, чтобы выяснить, в каком направлении движется каждая акция?
Спасибо.