[Python] Lineare Regression mit Scicit-Learn

Inhaltsangabe bis zum letzten Mal

Letztes Mal las die CSV-Datei und zeichnete das Streudiagramm. Der fertige Code und das Diagramm sehen folgendermaßen aus

import numpy as np
import matplotlib.pyplot as plt

data_set = np.loadtxt(
    fname="sampleData.csv",
    dtype="float",
    delimiter=",",
)

#Streudiagramm zeichnen → Streuung verwenden
#Zeile für Zeile herausnehmen und zeichnen
#plt.scatter(x Koordinatenwert,y Koordinatenwert)
for data in data_set:
    plt.scatter(data[0], data[1])

plt.title("correlation")
plt.xlabel("Average Temperature of SAITAMA")
plt.ylabel("Average Temperature of IWATE")
plt.grid()

plt.show()

scatter.png

Was diesmal zu tun ist

Verwenden Sie "scikit-learn", um eine lineare Regression durchzuführen und eine Regressionslinie zu zeichnen

Verfahren##

1 Extrahieren Sie x-Koordinaten- und y-Koordinatendaten aus csv

#x,Speichern Sie y-Daten in einem separaten Array
x = np.array(1) #Bereiten Sie ein Numpy-Array vor
y = np.array(1) #Zu diesem Zeitpunkt gibt es Daten, die zu Beginn nicht benötigt werden
for data in data_set:
    x = np.append(x, data[0]) #Fügen Sie Daten mit Anhängen hinzu
    y = np.append(y, data[1])
x = np.delete(x, 0,0) #Löschen Sie zu Beginn unnötige Daten
y = np.delete(y, 0,0)

2 Fügen Sie x und y aus 1 in das Modell ein, das eine lineare Regression durchführt. 3 Machen Sie eine gerade Linie, indem Sie eine Vorhersage mit dem in 2 erstellten Modell machen. 4 Zeichnen Sie mit Matplotlib

Was ist Scikit-Learn?

Es ist ein Modul, das Regression und Klassifizierung durchführt (Zackri) Klicken Sie hier für Details → Offizielle Seite

Code, der ein lineares Regressionsmodell verwendet

#Importmodul für lineare Regression
from sklearn.linear_model import LinearRegression

#In numpys Linspace für die x-Koordinate der Regressionslinie-Bereiten Sie gleichermaßen 100 Werte von 10 bis 40 vor
line_x = np.linspace(-10, 40, 100)

#scikit-Finden Sie die Vorhersageformel mit dem Modell mit dem kleinsten Quadrat in learn
model = LinearRegression()
model = model.fit(x.reshape(-1,1), y.reshape(-1,1)) #Fügen Sie die Daten in das Modell ein
model_y = model.predict(line_x.reshape(-1,1)) #Prognose
plt.plot(line_x, model_y, color = 'yellow')

model = model.fit (x.reshape (-1,1), y.reshape (-1,1)), aber die Form des numpy-Arrays wird geändert, um dem Argument der Funktion zu entsprechen. Weitere Informationen hier

Hier ist der vollständige Code und das Diagramm

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression

data_set = np.loadtxt(
    fname="sampleData.csv",
    dtype="float",
    delimiter=",",
)
#x,Speichern Sie y-Daten in einem separaten Array
x = np.array(1)
y = np.array(1)
for data in data_set:
    x = np.append(x, data[0])
    y = np.append(y, data[1])
x = np.delete(x, 0,0)
y = np.delete(y, 0,0)


#Zeichnen Sie ein Streudiagramm
for data in data_set:
    plt.scatter(data[0], data[1])


#scikit-Finden Sie die Vorhersageformel mit dem Modell mit dem kleinsten Quadrat in learn
model = LinearRegression()
model = model.fit(x.reshape(-1,1), y.reshape(-1,1))
line_x = np.linspace(-10, 40, 100)
model_y = model.predict(line_x.reshape(-1,1))
plt.plot(line_x, model_y, color = 'yellow')

plt.title("correlation")
plt.xlabel("Average Temperature of SAITAMA")
plt.ylabel("Average Temperature of IWATE")
plt.grid()

plt.show()

lineReg_scikit.png

Danke für deine harte Arbeit

Recommended Posts

[Python] Lineare Regression mit Scicit-Learn
Robuste lineare Regression mit Scikit-Learn
Lineare Regression in Python (Statmodelle, Scikit-Learn, PyMC3)
Lineare Regression mit Statistikmodellen
Regression mit einem linearen Modell
Neuronales Netzwerk mit Python (Scikit-Learn)
Online lineare Regression in Python
Python Scikit-learn Lineare Regressionsanalyse Nichtlineare einfache Regressionsanalyse Maschinelles Lernen
Lineare Regression
Logistische Regressionsanalyse Selbst erstellt mit Python
FizzBuzz in Python3
Isomap mit Scikit-lernen
Scraping mit Python
Scraping mit Python
Python mit Go
Online lineare Regression in Python (Robuste Schätzung)
Maschinelles Lernen mit Python (2) Einfache Regressionsanalyse
Twilio mit Python
In Python integrieren
Spielen Sie mit 2016-Python
AES256 mit Python
Getestet mit Python
Python beginnt mit ()
DBSCAN mit Scikit-Learn
Clustering mit Scikit-Learn (1)
mit Syntax (Python)
Einführung in die Bayes'sche statistische Modellierung mit Python ~ Versuch einer linearen Regression mit MCMC ~
Clustering mit Scikit-Learn (2)
PCA mit Scikit-Learn
Bingo mit Python
Zundokokiyoshi mit Python
kmeans ++ mit scikit-learn
Excel mit Python
Mikrocomputer mit Python
Mit Python besetzen
Implementiert in Python PRML Kapitel 3 Bayesianische lineare Regression
Lösen wir simultane lineare Gleichungen mit Python Sympy!
Vorhersage des heißen Sommers mit linearem Regressionsmodell
EV3 x Python Maschinelles Lernen Teil 2 Lineare Regression
Einführung in das Generalized Linear Model (GLM) von Python
Multivariables Regressionsmodell mit Scikit-Learn - Ich habe versucht, SVR zu vergleichen und zu verifizieren
Einfache LASSO-Regressionsanalyse mit Python (keine Theorie)
Serielle Kommunikation mit Python
Zip, entpacken mit Python
Django 1.11 wurde mit Python3.6 gestartet
Python mit Eclipse + PyDev.
Socket-Kommunikation mit Python
Datenanalyse mit Python 2
Scraping in Python (Vorbereitung)
Kreuzvalidierung mit Scikit-Learn
Versuchen Sie es mit Python.
Python lernen mit ChemTHEATER 03
Sequentielle Suche mit Python
"Objektorientiert" mit Python gelernt
Umgang mit Yaml mit Python
Löse AtCoder 167 mit Python
Serielle Kommunikation mit Python
[Python] Verwenden Sie JSON mit Python
Python lernen mit ChemTHEATER 05-1