Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- coding: utf-8 -*-
- """
- Created on Mon Apr 22 12:12:18 2019
- @author: lancernik
- """
- # Zadanie 1
- #
- #import numpy as np
- #from sklearn.linear_model import LinearRegression
- #from sklearn.model_selection import train_test_split
- #import matplotlib.pyplot as plt
- #
- #a = np.array([10, 20, 30, 40, 50, 60, 70, 80, 90]).reshape(-1,1)
- #b = np.array([300,350,500,700,800,850,900,1000,1200]).reshape(-1,1)
- #
- #def regress(x,y):
- # model = LinearRegression()
- # model.fit(x,y)
- # model.predict([[100]])
- #
- # x_test = np.linspace(x[0],x[-1])
- # y_pred = model.predict(x_test[:,None])
- #
- # plt.scatter(x,y)
- # plt.plot(x_test,y_pred,'r')
- # plt.legend(['Regresja', 'Kropeczki'])
- # plt.show()
- #
- #regress(a,b)
- #
- #Zadanie 2
- #
- import csv
- import os
- def regress(x,y):
- model = LinearRegression()
- model.fit(x,y)
- model.predict([[1]])
- x_test = np.linspace(min(x),max(x))
- y_pred = model.predict(x_test[:,None])
- plt.scatter(x,y, marker='*', s=10)
- plt.plot(x_test,y_pred,'r')
- plt.legend(['Regresja', 'Kropeczki'])
- plt.ylabel("Wartosc napięcia [V]")
- plt.xlabel("test")
- plt.show()
- # print("y={}x+{}".format(round(float(model.coef_),3),round(float(model.intercept_),3)))
- print("y={}x+{}".format(round(model.coef_[0,0],3),round(model.intercept_[0],3)))
- current_dir = os.path.abspath(os.path.dirname(__file__))
- data_path = os.path.join(current_dir, "Data")
- csv_path = os.path.join(data_path, "Advertising.csv")
- with open(csv_path) as csv_file:
- output_dict = dict()
- csv_reader = csv.reader(csv_file)
- first_row = next(csv_reader)
- for item in first_row:
- output_dict[item] = []
- for item in csv_reader:
- for i in range(len(item)):
- try:
- output_dict[first_row[i]].append(float(item[i]))
- except:
- output_dict[first_row[i]].append(item[i])
- for key in output_dict.keys():
- try:
- output_dict[key] = np.array(output_dict[key], dtype=np.float)
- except:
- pass
- tv = output_dict['TV'].reshape(-1,1)
- sales = output_dict['sales'].reshape(-1,1)
- radio = output_dict['radio'].reshape(-1,1)
- newspaper = output_dict['newspaper'].reshape(-1,1)
- regress(tv,sales)
- regress(radio,sales)
- regress(newspaper, sales)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement