Advertisement
Guest User

Untitled

a guest
Nov 21st, 2019
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.49 KB | None | 0 0
  1. # Linear Regression
  2. import pandas
  3. df = pandas.read_csv('london_merged.csv')
  4. print(df)
  5. print(df.shape)
  6. print(df.describe())
  7.  
  8. subset = df[['hum', 'wind_speed', 'cnt']]
  9. array = subset.values
  10. X = array[:, 0:2] # means all rows from columns 0...1
  11. y = array[:, 2] # 9th is counted here
  12.  
  13. from sklearn import model_selection
  14. X_train, X_test, Y_train, Y_test = model_selection.train_test_split(X, y, test_size=0.30, random_state=42)
  15.  
  16. # Linear regression
  17. from sklearn.linear_model import LinearRegression
  18. from sklearn.neighbors import KNeighborsRegressor
  19. from sklearn.tree import DecisionTreeRegressor
  20. from sklearn.svm import SVR
  21.  
  22. model = LinearRegression()
  23. model.fit(X_train, Y_train)
  24. print('Learning completed!')
  25.  
  26. # ask the model to predict X_test
  27. predictions = model.predict(X_test)
  28. print(predictions)
  29.  
  30. # check accuracy/performance
  31. from sklearn.metrics import r2_score
  32. # r squared shows the percentage
  33. print('R squared: ', r2_score(Y_test, predictions))
  34.  
  35. from sklearn.metrics import mean_squared_error
  36. print('Mean squared error ', mean_squared_error(Y_test, predictions))
  37. # above its squared, so we find square root
  38.  
  39. new = [[94.0, 8.0]]
  40. observation = model.predict(new)
  41. print('You will share ', observation, 'bikes')
  42.  
  43. # plot linear regression
  44. import matplotlib.pyplot as plt
  45. plt.style.use('seaborn')
  46. fig, ax = plt.subplots()
  47. ax.scatter(Y_test, predictions)
  48. ax.plot(Y_test, Y_test)
  49. ax.set_title('Predictions vs Y_test')
  50. ax.set_xlabel('Y test')
  51. ax.set_ylabel('Predictions')
  52. plt.show()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement