一、单变量线性回归
在单变量线性回归这一部分中,我们将使用一个变量实现线性回归,以预测食品卡车的利润。
假设你是一家餐饮连锁店的老板,并且正在考虑在不同的城市开设新的门店。该连锁店已经在各个城市开了新的分店,并且你有这些城市的利润和人口数据。你想使用此数据来帮助你选择要扩展到的下一个城市。
文件ex1data1.txt包含我们线性回归问题的数据集。第一列是城市的人口,第二列是该城市的餐车的利润,利润的负值表示亏损。
python实现:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
path = 'ex1data1.txt'
data = pd.read_csv(path,header=None,names=['Population','Profit'])
# print(data.head()) # 预览数据
# print(data.describe())
# data.plot(kind='scatter',x='Population',y='Profit',figsize=(12,8))
# plt.show()
data.insert(0,'Ones',1)
# print(data.shape) (97,3)
cols = data.shape[1]
X = data.iloc[:,0:cols-1] #左闭右开
Y = data.iloc[:,cols-1:cols]
X = np.matrix(X.values) #97行2列
y = np.matrix(Y.values) #97行1列
theta = np.matrix(np.array([0,0])) #1行2列
# X =