Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pandas as pd
- import pydotplus
- from sklearn.linear_model import LinearRegression
- from sklearn.linear_model import ElasticNet
- from sklearn.model_selection import train_test_split
- all = pd.read_csv('winequalityN.csv', header=0)
- all.isnull().any()
- all = all.fillna(method='ffill')
- print(all.shape[0])
- mask = all['type'] == "white"
- white, red = all[mask], all[~mask]
- print(all)
- df = all
- x = df.values[:, 1:12]
- y = df.values[:, 12:13]
- x_norm = (x - x.min()) / (x.max() - x.min())
- x_norm = x_norm.astype('float')
- print(x_norm.round(3))
- y = y.astype('float')
- print("Все вина = ", y.shape[0])
- for k in range(10):
- X_train, X_test, y_train, y_test = train_test_split(x_norm, y, test_size=0.3, random_state=0)
- print("y_test = ", y_test.shape[0])
- regressor = LinearRegression()
- regressor.fit(X_train, y_train)
- y_pred = regressor.predict(X_test)
- summ = 0
- for i in range(y_pred.shape[0]):
- summ = summ + abs(y_test[i] - y_pred[i])
- mistake = summ / y_pred.shape[0]
- good = 1 - mistake
- print(good)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement