机器学习之linear_model (线性回归算法模型)
2024-08-30 14:24:22
1.matplotlib
首先看一下这个静态图绘制模块
静态图形处理
数据分析三剑客
- Numpy : 主要为了给pandas提供数据源
- pandas : 更重要的数据结构
- matplotlib : 静态图形处理
海滨城市温度分析案例
导包
# 导包
import numpy as np
import pandas as pd
from pandas import Series,DataFrame import matplotlib.pyplot as plt from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['FangSong'] # 指定默认字体
mpl.rcParams['axes.unicode_minus'] = False # 解决保存图像是负号'-'显示为方块的问题
导入数据(各个海滨城的数据)
# 导入数据(各个海滨城市数据) ferrara1 = pd.read_csv('./ferrara_150715.csv')
ferrara2 = pd.read_csv('./ferrara_250715.csv')
ferrara3 = pd.read_csv('./ferrara_270615.csv')
ferrara=pd.concat([ferrara1,ferrara1,ferrara1],ignore_index=True) torino1 = pd.read_csv('./torino_150715.csv')
torino2 = pd.read_csv('./torino_250715.csv')
torino3 = pd.read_csv('./torino_270615.csv')
torino = pd.concat([torino1,torino2,torino3],ignore_index=True)
...
去除没用的列
city_list = [faenza,cesena,piacenza,bologna,asti,ravenna,milano,mantova,torino,ferrara]
for city in city_list:
city.drop(labels='Unnamed: 0',axis=1,inplace=True)
构造数据,显示最高温度与离海远近的关系
max_temp = []
dist_list = []
for city in city_list:
temp = city["temp"].max()
max_temp.append(temp)
dist = city['dist'][0]
dist_list.append(dist) plt.scatter(dist_list,max_temp) # 传入两个列表
plt.xlabel("距离") # x
plt.xlabel("最高温度") # y
plt.title("最高温度和距离之间的关系") # 标题
2.创建算法模型
2.1 线性回归算法模型
多用于预测
sklearn.linear_model
- 创建一个温度模型,让其可以根据一个距离预测出该距离对应城市的最高温度.
#样本数据的提取
feature = np.array(dist_list) # 数组形式的特征数据
target = np.array(max_temp) # 数组形式的目标数据 # 线性回归算法模型 y = ax + b --> 通过训练求出最匹配的a和b
from sklearn.linear_model import LinearRegression
linear = LinearRegression() # 实例化算法模型
# 训练模型
linear.fit(feature.reshape(-1,1),target) # 特征数据必须是二维的 !!!
# 基于训练好的模型对象实现预测功能
linear.predict([[226],[333]])
绘制关系图
# 使用多个点绘制最高温度和距离之间的关系
x = np.linspace(0,400,num=100)
y = linear.predict(x.reshape(-1,1))
plt.scatter(dist_list,max_temp)
plt.scatter(x,y)
plt.xlabel('距离')
plt.ylabel('最高温度')
plt.title('最高温度和距离直接的关系')
最新文章
- ASP.NET Core 中文文档 第四章 MVC(3.7 )局部视图(partial)
- VBA笔记(四)——立即窗口的使用
- samtools常用命令详解
- [PHP]OOP两类写法的性能对比
- Biee 11g权限详解
- Maven_如何为开发和生产环境建立不同的配置文件 --我的简洁方案
- jquery插件之tab标签页或滑动门
- POJ2676,HDU4069解决数独的两种实现:DFS、DLX
- NOIP200905
- windows phone (12) 小试自定义样式
- Java 9 揭秘(5. 实现服务)
- VS2017Release+x64失败,LNK1104,无法打开文件";msvcprt.lib";
- flutter packages.
- requests库爬取猫眼电影“最受期待榜”榜单 --网络爬虫
- dos命令 创建数据库,建表,两表联查,三表联查(mysql---第一篇)
- mongoDB 的介绍
- 哪个类可用于处理 Unicode?
- sql 去重关键字 distinct
- Error:(1, 1) java: 非法字符: ‘\ufeff’
- 如何Request客户端的传值的Data