#!/usr/bin/python3 from sklearn.datasets import load_boston from sklearn.linear_model import LinearRegression from sklearn.cross_validation import train_test_split import numpy as np # Ein gleicher Wert SEED bei der linearen Regression # und bei der Implementierung des kNN bewirkt, # dass Trainings- und Testreihe gleich sind # und damit das Ergebnis vergleichbar. SEED = 42 np.random.seed(SEED) # Datenreihe laden und in Trainings- und Testreihe aufteilen data = load_boston() X_train, X_test, y_train, y_test = train_test_split( data.data, data.target, train_size=0.85) # Die lineare Regression auf die Trainingsdaten anwenden model = LinearRegression() model.fit(X_train, y_train) # Die Testdaten vorhersagen prediction = model.predict(X_test) # Das Quadrat aller Differenzen berechnen mse = np.mean([ (y_test[n] - prediction[n]) ** 2 for n in range(len(prediction)) ]) print(mse)