机器学习预备知识:numpy、pandas、matplotlib库

正式开启机器学习的学习之前,我们需要掌握numpy(处理矩阵的库),panda(处理表盒的库)

numpy库

  • 是 Python 科学计算的基础库,全称为 Numerical Python,主要用于数值计算与多维数组操作。我们重点掌握多维数组,用来处理矩阵。
  • ndarray 多维数组:同类型元素的连续存储结构,支持矢量运算、广播机制,性能远高于 Python 原生列表。
  • 数值计算工具:包含线性代数、傅里叶变换、随机数生成、统计运算等功能。
  • 底层优化:核心由 C 语言实现,支持并行计算,兼顾 Python 的易用性与编译语言的速度。
1、数组的创建,维度:
python 复制代码
#导入库并重命名
import numpy as np

#创建数组
l=[1,2,3,4,5]
a=np.array(l)  #数组只接受接收「一个整体的数据集」(如列表、元组、嵌套列表),而不是零散的值。第二个参数可以指定参数的类型
print(a)

#数组的维度,即层层嵌套,多嵌套一层,就多一个维度
print(a)#一维数组
b=np.array([a,a,a]) 
print(b)#二维数组
c=np.array([b,b,b])
print(c)#三维数组

#由于数组只接受一个完整的数据集,下面这个代码会报错
b=np.array(a,a,a) 
print(b)#二维数组

#打印数组的大小,形状,维度,数据类型
print(c.size,c.shape,c.ndim,c.dtype)
2、改变数组维度
python 复制代码
import numpy as np
l=[1,2,3,4,5,6,7,8,9,8,7,6,5,4,3,2]
a=np,array(l)

#reshape改变维度

b=a.reshape(4,4)
c=a.reshape(4,-1) #-1表示自动计算该维度的行数
print(b)
print(c)


d=b.reshape(2,-1)#将b降成二维
print(d)

#将高纬度转变成一维ravel
e=b.ravel()
print(e)

#返回数组的副本flatten
f=a.flatten
print(f)

# flatten方法返回的是原数组的副本,这意味着对返回的一维数组所做的任何修改都不会影响原始的多维数组。
# ravel方法(如果可能)返回的是原始数组的视图,因此对返回的一维数组所做的修改可能会影响原始的多维数组。这是因为ravel只是改变了数组的形状和步长,而没有复制数据。

那么reshape()方法返回的是视图还是副本呢?

视图:和原来的数组共享存储空间,比如上面代码中,修改b中的某个值,a对应的值也随之改变,因为本质是同一个数据。

副本:单独开辟新的存储空间,副本中的值改变不影响原数组。

对数组进行切片等操作返回的是视图。

数组本身会在内存中开辟连续的存储空间。

①reshape()操作的对象没有改变原来数组的连续的存储顺序时,比如直接对原数组reshape,返回的是视图。

②reshape()的操作对象改变了原来数组的连续的存储顺序时,比如对原数组以步长为2进行切片的对象使用reshape(),此时返回副本。

3、创建特殊的数组
4、numpy中的两个常用函数

一次性产生规律数据的数组:

5、数组元素的选取与修改

使用中括号选取:array1【】,选取某些元素时需要以一个列表整体的形式传入数据比如array1【【1,2,5】】。

6、数据的组合
7、数组元素的切割

水平切割不是指沿着水平方向切割,而是切分出来的数组可以沿着水平方向拼接至完整,其实是沿着竖直方向切割。

8、数组的算数运算

即对应元素进行算数运算

休息,明天再写

相关推荐
lili00125 分钟前
2026 企业 AI 选型新范式:OpenRouter Fusion 证明多模型融合性价比远超单模型,企业该如何重构技术栈? - 微元算力(weytoken)
java·人工智能·python·重构·ai编程
shushangyun_7 分钟前
汽车服务行业B2B平台+AI解决方案哪家专业:2026年最新测评
java·运维·网络·数据库·人工智能·汽车
A.说学逗唱的Coke10 分钟前
【大模型专题】Spring AI Alibaba × Skill 整合实战:让 AI 真正“会干活
java·人工智能·spring
米小虾16 分钟前
AI Agent 记忆系统:从对话记录到认知架构
人工智能·agent
-山中问答-21 分钟前
【智能体工具使用实战08】实战项目:代码仓库健康度分析Agent
人工智能·智能体·工具调用·工程实战
林间码客22 分钟前
05 逻辑斯蒂回归(Logistic Regression)
人工智能·数据挖掘·回归
米小虾24 分钟前
AI Agent 上下文管理:从窗口到世界的桥梁
人工智能·agent
Gavynlee30 分钟前
ubuntu22.04配置hermes(API以硅基流动为例)
人工智能
渡众机器人32 分钟前
第八届全球校园人工智能算法精英大赛-算法应用赛-渡众机器人智能体对抗挑战赛规则
人工智能·算法·机器人·自动驾驶·自主导航·对抗赛
Dick50739 分钟前
ROS2 视觉感知、目标检测与 TF 控制闭环复盘:从 /camera/image_raw 到 /cmd_vel 的机器人目标跟随实现
人工智能·计算机视觉·目标跟踪