小白也能看的懂的Numpy

Numpy学习

Numpy的简介

什么是Numpy

​ NumPy(Numerical Python)是 Python 科学计算的基础包,它是一个开源的 Python 扩展库,用来支持大数据量的高维数组和矩阵运算,比 Python 自身的嵌套列表(该结构也可以用来表示矩阵)结构要高效的多。

​ NumPy 提供了许多高级的数值编程工具,比如矩阵数据类型、矢量处理、高精度运算等,它专为严格的数字处理而产生。

NumPy 是一个运行速度非常快的数学库,主要用于数组计算,包含:

  • 一个强大的 N 维数组对象 ndarray;
  • 广播功能函数;
  • 整合 C/C++/Fortran 代码的工具;
  • 线性代数、傅里叶变换、随机数生成等功能。

为什么使用Numpy

​ 由于列表的元素可以是任何对象,因此列表中所保存的是对象的指针。例如为了保存一个简单的[1,2,3],都需要有 3 个指针和 3 个整数对象。对于数值运算来说,这种结构显然比较浪费内存和 CPU 等宝贵资源。

​ 至于 array 对象,它可以直接保存数值,和C语言的一维数组比较类似。但是由于它不支持多维,在上面的函数也不多,因此也不适合做数值运算。

​ Numpy 的诞生弥补了这些不足,它提供了两种基本的对象:ndarray(N-dimensional Array Object)和 ufunc(Universal Function Object)。ndarray 是存储单一数据类型的多维数组,而 ufunc 则是能够对数组进行处理的函数。

Numpy和机器学习

​ 在机器学习和深度学习中,图像、声音、文本等输入数据最终都要转换为数组或矩阵。如何有效地进行数组和矩阵的运算?这就需要充分利用Numpy。

如何使用Numpy

基础使用

基础操作

一般会将numpy更名为np来使用

import numpy as np
print(np.__version__)

数组大小

Z = np.zeros((10,10))
print(Z.size)		#100
ptint(Z.itemsize)	#8
创建数组

zeros()函数创建一个全是零的数组,这是最基本和常用的创建n维数组的方法

Z = np.zeros(10)
print(Z) #[0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]

arange()函数在想法上与range函数类似,也是创建数组的常用方法

Z = np.arange(10,30)
print(Z) #[10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29]

random方法课用于创建随机值数组

Z = np.random.random((3,3,3))
print(Z)
'''
[[[0.11757184 0.38776176 0.78979583]
  [0.13802877 0.48093353 0.61956751]
  [0.91376786 0.09106369 0.50310015]]

 [[0.03035367 0.89790108 0.87705693]
  [0.59908423 0.67145029 0.20128228]
  [0.46814959 0.39326309 0.79544883]]

 [[0.81819206 0.68706919 0.69438302]
  [0.59874449 0.66192036 0.74282909]
  [0.23223406 0.27830052 0.61605617]]]
'''

用eye()函数创建单位矩阵

Z = np.eye(3)
print(Z)
'''
[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]
 '''

当然,方法还有很多很多,这些都是最基本的方法。
以上就是对Numpy的一个基础介绍。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值