Advertisement
lancernik

Untitled

Apr 23rd, 2019
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.34 KB | None | 0 0
  1. # -*- coding: utf-8 -*-
  2. """
  3. Created on Mon Apr 22 12:12:18 2019
  4.  
  5. @author: lancernik
  6. """
  7.  
  8. # Zadanie 1
  9. #
  10. #import numpy as np
  11. #from sklearn.linear_model import LinearRegression
  12. #from sklearn.model_selection import train_test_split
  13. #import matplotlib.pyplot as plt
  14. #
  15. #a = np.array([10, 20, 30, 40, 50, 60, 70, 80, 90]).reshape(-1,1)
  16. #b = np.array([300,350,500,700,800,850,900,1000,1200]).reshape(-1,1)
  17. #
  18. #def regress(x,y):
  19. # model = LinearRegression()
  20. # model.fit(x,y)
  21. # model.predict([[100]])
  22. #
  23. # x_test = np.linspace(x[0],x[-1])
  24. # y_pred = model.predict(x_test[:,None])
  25. #
  26. # plt.scatter(x,y)
  27. # plt.plot(x_test,y_pred,'r')
  28. # plt.legend(['Regresja', 'Kropeczki'])
  29. # plt.show()
  30. #
  31. #regress(a,b)
  32. #
  33.  
  34.  
  35.  
  36. #Zadanie 2
  37. #
  38. import csv
  39. import os
  40.  
  41.  
  42. def regress(x,y):
  43. model = LinearRegression()
  44. model.fit(x,y)
  45. model.predict([[1]])
  46.  
  47. x_test = np.linspace(min(x),max(x))
  48. y_pred = model.predict(x_test[:,None])
  49.  
  50. plt.scatter(x,y, marker='*', s=10)
  51. plt.plot(x_test,y_pred,'r')
  52. plt.legend(['Regresja', 'Kropeczki'])
  53. plt.ylabel("Wartosc napięcia [V]")
  54. plt.xlabel("test")
  55. plt.show()
  56. # print("y={}x+{}".format(round(float(model.coef_),3),round(float(model.intercept_),3)))
  57. print("y={}x+{}".format(round(model.coef_[0,0],3),round(model.intercept_[0],3)))
  58.  
  59.  
  60.  
  61. current_dir = os.path.abspath(os.path.dirname(__file__))
  62. data_path = os.path.join(current_dir, "Data")
  63. csv_path = os.path.join(data_path, "Advertising.csv")
  64.  
  65.  
  66.  
  67.  
  68. with open(csv_path) as csv_file:
  69. output_dict = dict()
  70. csv_reader = csv.reader(csv_file)
  71. first_row = next(csv_reader)
  72. for item in first_row:
  73. output_dict[item] = []
  74. for item in csv_reader:
  75. for i in range(len(item)):
  76. try:
  77. output_dict[first_row[i]].append(float(item[i]))
  78. except:
  79. output_dict[first_row[i]].append(item[i])
  80.  
  81. for key in output_dict.keys():
  82. try:
  83. output_dict[key] = np.array(output_dict[key], dtype=np.float)
  84. except:
  85. pass
  86.  
  87.  
  88. tv = output_dict['TV'].reshape(-1,1)
  89. sales = output_dict['sales'].reshape(-1,1)
  90. radio = output_dict['radio'].reshape(-1,1)
  91. newspaper = output_dict['newspaper'].reshape(-1,1)
  92.  
  93.  
  94.  
  95. regress(tv,sales)
  96. regress(radio,sales)
  97. regress(newspaper, sales)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement