机器学习预备知识: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、数组的算数运算

即对应元素进行算数运算

休息,明天再写

相关推荐
漫谈网络2 小时前
数据标记与内容标注区别解析
机器学习·数据标注
qiyue772 小时前
裁员这么猛,AI修仙抗一波
前端·人工智能·ai编程
光算科技2 小时前
谷歌是否歧视AI生成图片|用Midjourney作图要标注来源吗?
人工智能·midjourney
程思扬2 小时前
你的模型你做主:Fooocus + cpolar,安全远程生成 AI 图像
人工智能·笔记·tcp/ip·前端框架·figma·蓝湖
苏 凉2 小时前
ONNX Runtime 在 openEuler 上的 CPU 推理性能优化与评测
开发语言·人工智能
子午2 小时前
【垃圾识别系统】Python+TensorFlow+Django+人工智能+深度学习+卷积神经网络算法
人工智能·python·深度学习
北京中邦兴业2 小时前
GMP洁净环境监测法规深度解读:构建以风险为核心的动态防御体系
数据库·人工智能·面试·职场和发展
CNRio2 小时前
中国AI硬件战略:构建科技自立自强新支点
人工智能·科技
某林2122 小时前
集成式人机交互与底层驱动系统设计说明书
人工智能·stm32·嵌入式硬件·算法·机器学习·人机交互