单变量线性回归
- 注意:需要导入文件ex1data1.txt,ex1data2.txt
- 代码块一:
#单变量线性回归
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
path='D:\python_test\machine_learning\ex1data1.txt'
data=pd.read_csv(path,header=None,names=['Population','Profit'])
print(data.head())
#count :数量统计 ,此列共有多少有效值
#unipue:不同的值有多少个
#std:标准差
#min:最小值
#25%:四分之一分位数
#50%:二分之一分位数
#75%:四分之三分位数
#max:最大值
#mean:均值
print(data.describe())
data.plot(kind='scatter',x='Population',y='Profit',figsize=(12,8))
plt.show()
- 代码块一运行截图:
- 代码块二:
-
def computeCost(X,y,theta): inner=np.power(((X*theta.T)-y),2) return np.sum(inner/(2*len(X))) #在训练集中添加一列,以便于我们可以使用向量化的解决方案来计算代价和梯度 data.insert(0,'Ones',1) print(data.head()) print("---------------------") cols=data.shape[1] #shape[1]代表列数,shape[0]代表行数, print(cols)#3 print("-------------------") X=data.iloc[:,0:cols-1]#0:2 选择第一到第二列 y=data.iloc[:,cols-1:cols]#2:3选择第三列 print(X.head()) print("----------------------") print(y.head()) print("----------------------") X=np.matrix(X.values) # print(X) print("----------------------") y=np.matrix(y.values) # print(y) theta=np.matrix(np.array([0,0])) print(X.shape,theta.shape,y.shape) #X为97行2列,theta为1行2列 ,y为97行1列 print(computeCost(X, y, theta))#输出预测值
- 代码块二运行截图:
- 总结:如果喜欢人工智能的小伙伴,推荐去看吴恩达教授的机器学习,我目前也在学习,老师讲的课通俗易懂。最后本次内容仅作为学习使用。如有侵权,联系删除
- 点赞666和收藏,私信分享源码和数据训练集