Wie ich im vorherigen Artikel geschrieben habe, habe ich Pandas gestartet. In Anbetracht des statischen Speichers beim Herunterfahren als CSV ist DataFrame ein benutzerfreundlicher Speicherort auf dem Speicher. Lassen Sie uns also die Grammatik von SELECT und WHERE in SQL aufzeichnen. Übrigens möchte ich ein Beispiel für die Verwendung von PLS geben.
Nun, es ist eine Grammatikprüfung, also dachte ich, es sei ein Code ohne eine Wendung, aber nur ein wenig. Ich benutze oft das Folgende, um leicht zu bestätigen, dass "Vorhersage funktioniert".
(Formel) y = f(x1, x2) = x1 + x2 * 2
(Daten)
#7 Zeilen x 3 Spalten
csvpath = 'SimplePrediction.csv'
# ,y,x1,x2
# 1,5,1,2
# 2,11,3,4
# 3,15,3,6
# 4,16,2,7
# 5,11,1,5
# 6,0,5,2
# 7,0,1,2
Nun, Sie könnten gefragt werden: "Ist das maschinelles Lernen?". Aber ist es nicht ärgerlich, wenn Leute manuell nach einem Beispiel suchen, wie NN oder SVM funktionieren? Es wäre einfach zu überprüfen. Es ist nützlich. Ja.
Dies ist der erste. Ein Beispiel für die Verwaltung eines DataFrame.
import pandas as pd
#7 Zeilen x 3 Spalten
csvpath = 'SimplePrediction.csv'
# ,y,x1,x2
# 1,5,1,2
# 2,11,3,4
# 3,15,3,6
# 4,16,2,7
# 5,11,1,5
# 6,0,5,2
# 7,0,1,2
def main():
df = pd.read_csv(csvpath)
print('--Ursprüngliche Form--')
print(df)
print('--Erste 5 Zeilen--')
print(df[:5])
print('--Letzte 2 Zeilen--')
print(df[-2:])
print('--Nur 2. Reihe--')
print(df.iloc[:, 1:2])
print('--Letzte 2 Spalten--')
print(df.iloc[:, -2:])
print('--Speichern Sie die ersten 5 Zeilen und die letzten 2 Spalten--')
print(df.iloc[:5, -2:])
df.iloc[:5, -2:].to_csv('X.csv', index=False)
print('--Speichern Sie nur die zweite Spalte der ersten 5 Zeilen--')
print(df.iloc[:5, 1:2])
df.iloc[:5, 1:2].to_csv('y.csv', index=False)
if __name__ == '__main__':
main()
Dies ist der zweite. Erstellen Sie ein Modell mit den oben genannten. Machen Sie eine Datei. Lesen Sie es und machen Sie eine Vorhersage.
import pandas as pd
#5 Zeilen x 2 Spalten
Xpath = 'X.csv'
# x1,x2
# 1,2
# 3,4
# 3,6
# 2,7
# 1,5
#5 Zeilen x 1 Spalte
ypath = 'y.csv'
# y
# 5
# 11
# 15
# 16
# 11
def get_xy():
X = pd.read_csv(Xpath)
y = pd.read_csv(ypath)
return X, y
def save_model():
X, y = get_xy()
#Modellieren
from sklearn.cross_decomposition import PLSRegression
model = PLSRegression(n_components=2)
model.fit(X, y)
#sparen
from sklearn.externals import joblib
joblib.dump(model, 'pls.pickle')
def use_model():
X, y = get_xy()
#Lesen
pls = joblib.load('pls.pickle')
y_pred = pls.predict(X)
# y = f(x1, x2) = x1 + x2 *Da 2 vorbereitet ist, bestätigen Sie die genaue Übereinstimmung mit PLS
print(y_pred)
def main():
# save_model()
use_model()
if __name__ == '__main__':
main()
Vor allem.
Recommended Posts