当前位置: 首页 > news >正文

Python基础库及机器学习笔记

1.介绍

本节将主要介绍Python中的常用第三方库。这些库都是实现了各种计算功能的开源库,它们极大地丰富了Python的应用场景和计算能力,这里主要介绍NumPy、pandas和Matplotlib三个库的基础使用。其中NumPy是Python用来进行矩阵运算、高维度数组运算的数学计算库;pandas是Python用来进行数据预处理、数据操作和数据分析的库;Matplotlib是简单易用的数据可视化库,包含了丰富的数据可视化功能。接下将会逐个介绍这些库的简单应用。

1.1 NumPy

NumPy中文官网:https://www.numpy.org.cn/
NumPy是使用Python进行科学计算的基础包。它包含如下的内容:

一个强大的N维数组对象。
复杂的(广播)功能。
用于集成C / C ++和Fortran代码的工具。
有用的线性代数,傅里叶变换和随机数功能。
除了明显的科学用途外,NumPy还可以用作通用数据的高效多维容器。可以定义任意数据类型。这使NumPy能够无缝快速地与各种数据库集成。

NumPy是在BSD许可下获得许可的,允许重用而不受限制。

1.2 pandas

pandas中文官网:https://pypandas.cn/
pandas库在数据分析中是非常重要和常用的库,它利用数据框让数据的处理和操作变得
简单和快捷,在数据预处理、缺失值填补、时间序列、可视化等方面都有应用。接下来简单
介绍pandas的使用方法,包括如何生成序列和数据表格、数据聚合与分组运算及数据可视化
功能等。pandas库在导入后经常使用pd来代替。

1.3 Matplotlib

Matplotlib中文官网:https://matplotlib.org.cn/
Matplotlib是Python的绘图库,其具有丰富的绘图功能,pyplot是其中的一个模块,它
提供了类似MATLAB的绘图接口,能够绘制2D、3D等丰富图像,是数据可视化的好帮手,
接下来简单介绍其使用方法。

2. 机器学习模型初探

针对待分析的数据集,利用机器学习算法进行建模和分析的步骤其实也很固定,下面先
来看一个实际的机器学习应用案例。
假设房子的价格只跟面积有关,表1-1给出了一些房子的面积和价格之间的数据,请计
算出40㎡的房屋价格。
在这里插入图片描述

import numpy as np
import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression

x=np.array([56,32,78,160,240,89,91,69,43])
y=np.array( [90,65,125,272,312,147,159,109,78])
#数据导入与处理,并进行数据探索
X=x.reshape(-1,1)
Y=y.reshape(-1,1)
plt.figure(figsize=(10,6))#初始化图像窗口plt.scatter(X,Y,s=50)#原始数据的图
plt.title("原始数据的图")
plt.show()
#训练模型和预测
model=LinearRegression()
model.fit(X,Y)
x1=np.array([40,]).reshape(-1,1)    #带预测数据
xl_pre=model.predict(np.array(x1))  #预测面积为40m2时的房价

#数据可视化,将预测的点也打印在图上
plt.figure (figsize=(10,8))
plt.scatter(X,Y)#原始数据的图
b=model.intercept #截距a=model.coef#斜率
y=a*X+b#原始数据按照训练好的模型画出直线

plt.plot(X,y)
yl=a*x1+b
plt.scatter(x1,y1,color='r')
plt.show()

相关文章:

  • 敏捷价值流管理
  • 文件操作:文件的使用打开关闭与读写(顺序读写)
  • Coinbase Vntures:Web3社交堆栈指南
  • 桌面文件不见了怎么恢复?
  • BHG Mall超级宠粉节攻略收藏,商业IP化出圈新玩法
  • 基于RSA的数字签名设计与实现
  • 《码出高效:java开发手册》六-数据结构与集合(一)
  • Anaconda开发环境
  • 品牌线上窜货治理方案
  • [第十二届蓝桥杯/java/算法]D——相乘
  • NewStarCTF公开赛week3密码学前两道题的wp
  • FOC算法与SVPWM技术
  • C++和Qt分别与HTuple之间相互转换
  • WPF使用快捷键 资源 输入快捷键与资源绑定 资源绑定调用操作 或keydown处理
  • HistoSeg:具有多损失函数的快速注意,用于数字组织学图像中的多结构分割
  • [洛谷]【深基16.例3】二叉树深度
  • Java 条件语句 - if...else
  • 网络实验之VTP协议
  • Python基础(十)模块与包
  • Vue3项目基本知识点