Лучшая подгонка / простая линейная регрессия для набора данных в Python - PullRequest
1 голос
/ 21 февраля 2020

У меня есть более 1000 файлов .txt с двумя столбцами, один из которых является датой, а другой - ценами (для акций), и каждый файл назван в честь тикера для акций. Я хочу найти наиболее подходящую линию для данных, чтобы выяснить, является ли она положительной, отрицательной или плоской. Я подумал, что смогу сделать это, найдя наклон линии наилучшего соответствия. Кто-нибудь знает, как я мог это кодировать?

Пока у меня есть:

import numpy as np
import pandas as pd
import matplotlib as plt
import os as os
import seaborn as sns
from statistics import mean
from sklearn.model_selection import train_test_split 
from sklearn.linear_model import LinearRegression
from sklearn import metrics
%matplotlib inline

filelist = os.listdir(r'InsertFilePath')

filepath = r'InsertFilePath'

dic1 = {}
#Uploads files to a Dictionary with filename(ticker) being the keys and the Data being the values
for file in filelist:
    df = pd.read_csv(filepath + file,sep='\t')
    dic1[file]= df


#renames Columns to Dates and Prices
for key,value in dic1.items():
     value.rename(columns={value.columns[0]:'Dates',value.columns[1]:'Prices'},inplace=True)

x = df['Dates']
y = df['Prices']
LinearRegression().fit(x,y)

Но для последних трех строк я получаю сообщение об ошибке, потому что Даты представлены в виде строки. Я устал делать int (df ['Dates]), но это тоже не работает. Я довольно новичок в python, так что прости меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...