Numpy

Posted sr-program

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Numpy相关的知识,希望对你有一定的参考价值。

一:基础简介

1:介绍

Numpy是高性能科学计算和数据分析的基础包。它也是pandas等其他数据分析的工具的基础,基本所有数据分析的包都用过它。NumPy为Python带来了真正的多维数组功能,并且提供了丰富的函数库处理这些数组。它将常用的数学函数都支持向量化运算,使得这些数学函数能够直接对数组进行操作,将本来需要在Python级别进行的循环,放到C语言的运算中,明显地提高了程序的运算速度。

2:安装方式

pip install numpy

3:引用方式

import numpy as np  # 行业内默认起个别名 np

这是官方认证的导入方式,可能会有人说为什么不用from numpy import *,是因为在numpy当中有一些方法与Python中自带的一些方法,例如maxmin等冲突,为了避免这些麻烦大家就约定俗成的都使用这种方法。

二:ndarray -多维数组对象

1:ndarray使用方式

import numpy as np   # 导入numpy模块

np.array()   # 生成ndarray对象

2:ndarray使用优势

(1)如图所示 求商品总价格

技术图片

方法一:通过for循环 循环出一个个元素

方法二:通过匿名函数 zip做出映射

PS:上述方法都是太麻烦

技术图片

PS:

  (1)此种方式就简单方便很多

3:ndarray是一个多维的数组列表

技术图片

 PS:和列表的区别

  • 数组对象内的元素类型必须相同
  • 数组大小不可修改

4:常用属性

技术图片

l1= [ [1,2,3,4],[5,6,7,8]]
res1 = np.array(l1)
res1.T

array([[1, 5],  # 行列对换
       [2, 6],
       [3, 7],
       [4, 8]])
PS:其余比较简单 此处不写案例了

5:数据类型

技术图片

PS:

  (1)整型: int32只能表示(-2**31,2**31-1),因为它只有32个位,只能表示2**32个数

  (2)无符号整型: 只能用来存正数,不能用来存负数 补充:

  (3)astype()方法可以修改数组的数据类型

 6:ndarray创建

技术图片

技术图片
np.arange(10)
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])   # 与python的range一样 顾头不顾尾


np.linspace(2,3,num=5,endpoint=False)   ### 在2 3之间平均分成五份 endpoint表示是否要包含尾部

array([2. , 2.2, 2.4, 2.6, 2.8])



np.zeros(10)  ### 表示生成多少个0
array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0.])


np.ones(10)   ### 表示生成多少个1
array([1., 1., 1., 1., 1., 1., 1., 1., 1., 1.])


np.empty([2,3])   ### 随机生成一个数组
array([[4.25e-322, 0.00e+000, 0.00e+000],
       [0.00e+000, 0.00e+000, 0.00e+000]])

np.eye(5)   ### 建立矩阵
array([[1., 0., 0., 0., 0.],
       [0., 1., 0., 0., 0.],
       [0., 0., 1., 0., 0.],
       [0., 0., 0., 1., 0.],
       [0., 0., 0., 0., 1.]])
使用方法

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

以上是关于Numpy的主要内容,如果未能解决你的问题,请参考以下文章

'numpy.ndarray':对象不可调用错误

乐哥学AI_Python:Numpy索引,切片,常用函数

对数据进行去均值并转换为 numpy 数组

Jax 矢量化:vmap 和/或 numpy.vectorize?

微信小程序代码片段

VSCode自定义代码片段——CSS选择器