多项式回归算法模拟

news2024/9/29 11:33:25

python3.6 环境

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.preprocessing import PolynomialFeatures

# 生成随机数作为x变量,范围在-5到5之间,共100个样本
x = np.random.uniform(-5, 5, size=100)
X = x.reshape(-1, 1)

# 根据条件设置y变量,当x>0时,y设置为2;否则符合二次方程的值加上正态分布的噪声
y = np.where(x > 0, 2, 0.5 * x ** 2 + x + 2 - (0.3 * x) ** 3 + np.random.normal(0, 1, size=100))

# 用散点图形式展示生成的数据
plt.scatter(x, y)
plt.show()

# 实例化一个线性回归模型
lr = LinearRegression()

# 使用原始特征进行拟合
# lr.fit(X, y)  # 如果不想展示线性回归结果,可以注释掉这行和下面两行

# 得到模型预测值
# y_predict = lr.predict(X)  # 同上,注释掉

# 在图上展示原始数据和线性模型的拟合效果
# plt.scatter(x, y)  # 同上,注释掉
# plt.plot(x, y_predict, color='red')  # 同上,注释掉
# plt.show()  # 同上,注释掉

# 将原始特征转换为3次多项式特征
poly = PolynomialFeatures(degree=3)
poly.fit(X)
X_poly = poly.transform(X)

# 使用3次多项式特征进行拟合
lr.fit(X_poly, y)

# 得到模型预测值
y_predict_poly = lr.predict(X_poly)

# 只在图上展示原始数据和多项式模型的拟合效果
plt.scatter(x, y)
plt.plot(np.sort(x), y_predict_poly[np.argsort(x)], color='red')
plt.show()
print(x)
print(y)

#以下是对预测结果进行特殊处理,比如 >2 true ; <=2 false
# 预测结果与2比较,产生布尔数组
is_greater_or_equal_to_two = y_predict_poly >= 2
# 打印布尔数组
print(is_greater_or_equal_to_two)
# 如果您想要在布尔数组中看到对应的x和y的值,可以这样打印
for i in range(len(x)):
    print(f"x: {x[i]}, y: {y_predict_poly[i]}, >=2: {is_greater_or_equal_to_two[i]}")

在这里插入图片描述在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1516548.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于boost库的搜索引擎项目

文章目录 一、项目背景二、什么样的搜索引擎三、搜索引擎的宏观图原理四、Parse模块4.1下载boost库源代码4.2提取boost库中以.html为结尾的文件4.2.1 boost库的简单使用 4.3数据清洗(去标签化)4.3.1数据清洗的具体实现 4.4将清洗后的数据写入到raw.txt文件中 五、正排索引 vs 倒…

【数据结构七】堆与PriorityQueue详解

堆 在Java中有一种数据结构基于队列&#xff0c;并保证操作的数据带有优先级&#xff0c;该数据结构应该提供了两个最基本的操作&#xff0c;一个是返回最高优先级对象&#xff0c;一个是添加新的对象。这种数据结构就是优先级队列(Priority Queue)。它的底层使用了堆这种数据结…

day-19 合并后数组中的最大元素

思路&#xff1a;从后向前遍历数组&#xff0c;用tans记录每一种可能的最大值&#xff0c;ans为实际最大值。 注意&#xff1a;若ans0,返回nums[0] 要用long code class Solution {public long maxArrayValue(int[] nums) {long ans0;long tans0;boolean flagtrue;for(int in…

SpringBoot接口添加IP白名单限制

实现流程&#xff1a; 自定义拦截器——注入拦截器——获取请求IP——对比IP是否一致——请求返回 文章背景&#xff1a; 接口添加IP白名单限制&#xff0c;只有规定的IP可以访问项目。 实现思路&#xff1a; 添加拦截器&#xff0c;拦截项目所有的请求&#xff0c;获取请求的…

MySQL 篇-深入了解事务四大特性及原理

&#x1f525;博客主页&#xff1a; 【小扳_-CSDN博客】 ❤感谢大家点赞&#x1f44d;收藏⭐评论✍ 文章目录 1.0 事务的概述 2.0 事务的特性 2.1 原子性 2.2 一致性 2.3 持久性 2.4 隔离性 2.4.1 脏读问题 2.4.2 不可重复读问题 2.4.3 幻读问题 3.0 事务的四个隔离级别 3.1…

#QT(一种朴素的计算器实现方法)

1.IDE&#xff1a;QTCreator 2.实验&#xff1a;这是全靠自己想法写的计算器&#xff0c;没有参考任何教程。 &#xff08;1&#xff09;这个计算器只要有运算符敲入就会进行一次运算&#xff0c;所以他没有先后之后&#xff0c;无法满足运算优先级。 &#xff08;2&#xff…

服务器集群 -- nginx配置tcp负载均衡

当面临高流量、高可用性、水平扩展、会话保持或跨地域流量分发等需求时&#xff0c;单台服务器受限于硬件资源、性能有限不能满足应用场景的并发需求量时&#xff0c;引入负载均衡器部署多个服务器共同处理客户端的并发请求&#xff0c;可以帮助优化系统架构&#xff0c;提高系…

【CSP试题回顾】201712-2-游戏

CSP-201712-2-游戏 解题思路 代码实现了一个模拟游戏过程的算法&#xff0c;其中n个小朋友围成一圈&#xff0c;按照顺时针方向依次编号从1到n&#xff0c;然后按顺时针方向依次报数。每当报的数是k的倍数或者个位数是k时&#xff0c;报数的小朋友会被淘汰。游戏继续进行&…

关于使用elementUI中select和el-checkbox-group的回显问题

网上看到很关于这个的问题回显&#xff0c;各式各样&#xff0c;没有绝句自己的问题&#xff0c;总重问题出在数据格式上 select和el-checkbox-group el-checkbox 都是字符串数组格式&#xff1a;[12,13,....]; 我写的格式是id是选中的id组成的回显数据格式&#xff1b; 如…

【爬虫】requests.post请求中的data和json使用区别

请求体是键值对形式&#xff08;无花括号&#xff09;&#xff0c;请求时需要使用data参数处理。 代码&#xff1a; data {...} ret requests.post(url, headersheaders, datadata)请求体是字典形式&#xff08;有花括号&#xff09;&#xff0c;请求时需要使用json参数处理。…

第16届大广赛XPPen都有哪些参赛命题

截至到发文时间&#xff0c;2024年3月14日&#xff0c;第16届大广赛已经累计公布了6个品牌命题&#xff0c;本文就给大家介绍一下XPPen命题的详细细节。 XPPen为汉王友基旗下全球知名数字艺术创新品牌&#xff0c;专注消费级用户创作需求&#xff0c;品牌产品覆盖全球160多个国…

C/C++中strcpy,strcat,strstr以及strncpy,strncat,strncmp的使用

1、首先我们来介绍strcpy的使用从这个函数的名字来看它应该是属于字符串的拷贝&#xff0c;string copy。 那么这个函数是怎么用的呢&#xff1f;下面我么来介绍她的基本结构。 char * strcpy ( char * destination, const char * source );由上述可知它需要两部分 一个是目标字…

如何在CentOS7搭建DashDot服务器仪表盘并实现远程监控

文章目录 1. 本地环境检查1.1 安装docker1.2 下载Dashdot镜像 2. 部署DashDot应用3. 本地访问DashDot服务4. 安装cpolar内网穿透5. 固定DashDot公网地址 本篇文章我们将使用Docker在本地部署DashDot服务器仪表盘&#xff0c;并且结合cpolar内网穿透工具可以实现公网实时监测服务…

【Python】新手入门学习:详细介绍里氏替换原则(LSP)及其作用、代码示例

【Python】新手入门学习&#xff1a;详细介绍里氏替换原则&#xff08;LSP&#xff09;及其作用、代码示例 &#x1f308; 个人主页&#xff1a;高斯小哥 &#x1f525; 高质量专栏&#xff1a;Matplotlib之旅&#xff1a;零基础精通数据可视化、Python基础【高质量合集】、PyT…

ArcGIS学习(十五)用地适宜性评价

ArcGIS学习(十五)用地适宜性评价 本任务给大家带来的内容是用地适宜性评价。 用地适宜性评价是大家在平时工作中最常接触到的分析场景之一。尤其是在国土空间规划的大背景下,用地适宜性评价变得越来越重要。 此外,我们之前的任务主要是使用矢量数据进行分析。本案例是主讲…

vs2022 错误(活动) E1696 无法打开 源 文件 “bits/stdc++.h“解决办法

一、创建stdc.h的头文件 随便找一个项目->添加->新建项->头文件->命名为stdc.h->添加 二、复制下述代码->保存 ​ // C includes used for precompiling -*- C -*-// Copyright (C) 2003-2017 Free Software Foundation, Inc. // // This file is part of …

镭雕机:如何利用激光技术实现高质量的产品标记

镭雕机是一种利用激光技术实现高质量产品标记的设备。它通过激光束在各种不同的物质表面进行精确的打标&#xff0c;可以产生永久性的标记效果&#xff0c;这些标记不仅精美&#xff0c;而且具有高度的精度和清晰度。以下是镭雕机如何利用激光技术实现高质量产品标记的详细过程…

java枚举与模拟方法

枚举 枚举的定义 枚举算法&#xff08;穷举算法&#xff09;&#xff0c;这种算法就是在解决实际问题的时候去使用所有的方式去解决这个问题&#xff0c;会通过推理去考虑事件发生的每一种可能性&#xff0c;最后推导出结果 优点 简单粗暴&#xff0c;他暴力的枚举所有可能&…

Unity之PUN实现多人联机射击游戏的优化

目录 &#x1f3ae;一、 跳跃&#xff0c;加速跑 &#x1f3ae;二、玩家自定义输入昵称 &#x1f345;2.1 给昵称赋值 &#x1f345;2.2 实现 &#x1f3ae;三、玩家昵称同步到房间列表 &#x1f345;3.1 获取全部玩家 &#x1f345;3.2 自定义Player中的字段 &#…

【代码随想录 | 数组 03】有序数组的平方

文章目录 3.有序数组的平方3.1题目3.2思路3.2.1暴力解法3.2.2双指针法 3.有序数组的平方 3.1题目 977.有序数组的平方——力扣题目链接 给你一个按 非递减顺序 排序的整数数组 nums&#xff0c;返回 每个数字的平方 组成的新数组&#xff0c;要求也按 非递减顺序 排序。 示…