Advertisement
lancernik

Ais5

May 5th, 2019
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.12 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. #import numpy as np
  41. #from sklearn.linear_model import LinearRegression
  42. #from sklearn.model_selection import train_test_split
  43. #import matplotlib.pyplot as plt
  44. #
  45. #
  46. #def regress(x,y):
  47. # model = LinearRegression()
  48. # model.fit(x,y)
  49. # model.predict([[1]])
  50. #
  51. # x_test = np.linspace(min(x),max(x))
  52. # y_pred = model.predict(x_test)
  53. #
  54. # plt.scatter(x,y, marker='*', s=10)
  55. # plt.plot(x_test,y_pred,'r')
  56. # plt.legend(['Regresja', 'Kropeczki'])
  57. # plt.ylabel("Wartosc napięcia [V]")
  58. # plt.xlabel("test")
  59. # plt.show()
  60. ## print("y={}x+{}".format(round(float(model.coef_),3),round(float(model.intercept_),3)))
  61. # print("y={}x+{}".format(round(model.coef_[0,0],3),round(model.intercept_[0],3)))
  62. #
  63. #
  64. #
  65. #current_dir = os.path.abspath(os.path.dirname(__file__))
  66. #data_path = os.path.join(current_dir, "Data")
  67. #csv_path = os.path.join(data_path, "Advertising.csv")
  68. #
  69. #
  70. #
  71. #
  72. #with open(csv_path) as csv_file:
  73. # output_dict = dict()
  74. # csv_reader = csv.reader(csv_file)
  75. # first_row = next(csv_reader)
  76. # for item in first_row:
  77. # output_dict[item] = []
  78. # for item in csv_reader:
  79. # for i in range(len(item)):
  80. # try:
  81. # output_dict[first_row[i]].append(float(item[i]))
  82. # except:
  83. # output_dict[first_row[i]].append(item[i])
  84. #
  85. # for key in output_dict.keys():
  86. # try:
  87. # output_dict[key] = np.array(output_dict[key], dtype=np.float)
  88. # except:
  89. # pass
  90. #
  91. #
  92. #tv = output_dict['TV'].reshape(-1,1)
  93. #sales = output_dict['sales'].reshape(-1,1)
  94. #radio = output_dict['radio'].reshape(-1,1)
  95. #newspaper = output_dict['newspaper'].reshape(-1,1)
  96. #
  97. #
  98. #
  99. #regress(tv,sales)
  100. #regress(radio,sales)
  101. #regress(newspaper, sales)
  102.  
  103.  
  104.  
  105.  
  106. #Zadanie 3
  107.  
  108.  
  109. import csv
  110. import os
  111. import numpy as np
  112. #from sklearn.linear_model import LinearRegression
  113. from sklearn.model_selection import train_test_split
  114. import matplotlib.pyplot as plt
  115. import pandas as pd
  116. from sklearn import linear_model
  117.  
  118.  
  119. current_dir = os.path.abspath(os.path.dirname(__file__))
  120. data_path = os.path.join(current_dir, "Data")
  121. csv_path = os.path.join(data_path, "Advertising.csv")
  122.  
  123. with open(csv_path) as csv_file:
  124. output_dict = dict()
  125. csv_reader = csv.reader(csv_file)
  126. first_row = next(csv_reader)
  127. for item in first_row:
  128. output_dict[item] = []
  129. for item in csv_reader:
  130. for i in range(len(item)):
  131. try:
  132. output_dict[first_row[i]].append(float(item[i]))
  133. except:
  134. output_dict[first_row[i]].append(item[i])
  135.  
  136. for key in output_dict.keys():
  137. try:
  138. output_dict[key] = np.array(output_dict[key], dtype=np.float)
  139. dataset = pd.DataFrame.from_dict(output_dict)
  140. except:
  141. pass
  142.  
  143.  
  144.  
  145. dataset = dataset[['TV','radio','newspaper','sales']]
  146.  
  147.  
  148.  
  149.  
  150.  
  151. data = {'TV':[400,450], 'radio':[100,200],'newspaper':[200,50]}
  152.  
  153. df = pd.DataFrame(data)
  154.  
  155.  
  156. dataTrain = dataset
  157. dataTest = dataset
  158. # print df.head()
  159.  
  160. x_train = dataTrain[['TV', 'radio','newspaper']].values.reshape(-1,3)
  161. y_train = dataTrain['sales']
  162.  
  163. x_test = dataTest[['TV', 'radio','newspaper']].values.reshape(-1,3)
  164. y_test = dataTest['sales']
  165.  
  166. ols = linear_model.LinearRegression()
  167. model = ols.fit(x_train, y_train)
  168.  
  169.  
  170.  
  171.  
  172. print(model.predict(df)[0:2])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement