Python Numpy 高效的运算工具详解

目录
  • Numpy 介绍
    • 优势
  • numpy常用属性
    • ndarray形状
  • 二维数组
    • ndarray类型
    • 创建ndarray时,指定其类型
  • 基本操作
  • 总结

Numpy 介绍

numpy

num numerical 数值化

py python

ndarray

n 任意个

d dimension 维度

array 数组

n维 相同数组类型的集合

将数据组 转化为 ndarray类型

data = np.array(数组)

import numpy as np
data = np.array([[80,89,65,79],
[80,89,65,79],
[80,89,65,79],
[80,89,65,79],
[80,89,65,79]]
)
data
type(data)

通过 ndarray的形式进行存储

优势

存储风格

ndarray 相同类型 通用性差

list 不同类型 通用性强

并行化运算

nd.array 支持并行化/向量化运算

底层语言

多任务处理: 多线程 多进程

python受到GIL锁限制,拖累限制。

numpy底层用C语言实现,接触GIL锁限制。不受python解释器限制。

numpy常用属性

形状 shape 维度 元素个数

类型 dtype (根据数据类型得知)所占内存的大小

ndarray形状

二维数组

下图(3,3) 三行 三列

三个 二维数组

ndarray类型

创建ndarray时,指定其类型

data3 = np.array([1.1,2.2,3,3],dtype = 'float32')
data3 = np.array([1.1,2.2,3,3],dtype = np.float32)

不指定的话,整数默认int64,,小数float64。

基本操作

生成数据方法adarrat

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • Python常用库Numpy进行矩阵运算详解

    Numpy支持大量的维度数组和矩阵运算,对数组运算提供了大量的数学函数库! Numpy比Python列表更具优势,其中一个优势便是速度.在对大型数组执行操作时,Numpy的速度比Python列表的速度快了好几百.因为Numpy数组本身能节省内存,并且Numpy在执行算术.统计和线性代数运算时采用了优化算法. Numpy的另一个强大功能是具有可以表示向量和矩阵的多维数组数据结构.Numpy对矩阵运算进行了优化,使我们能够高效地执行线性代数运算,使其非常适合解决机器学习问题. 与Python列表相比

  • Python如何实现大型数组运算(使用NumPy)

    问题 你需要在大数据集(比如数组或网格)上面执行计算. 解决方案 涉及到数组的重量级运算操作,可以使用NumPy库.NumPy的一个主要特征是它会给Python提供一个数组对象,相比标准的Python列表而已更适合用来做数学运算.下面是一个简单的小例子,向你展示标准列表对象和NumPy数组对象之间的差别: >>> # Python lists >>> x = [1, 2, 3, 4] >>> y = [5, 6, 7, 8] >>>

  • Python numpy大矩阵运算内存不足如何解决

    程序运行,产生如下结果,然后进程终止,导致这一结果的原因很有可能是内存爆炸. 当两个较大的 (e.g., 10000*10000 维)ndarray 做运算(加法,or 乘法)时,很容易出现这样的结果. 解决办法: 大多数情况下,这种大矩阵都是稀疏的.尽可能地利用稀疏计算的方式,例如稀疏矩阵,或者只计算非 0 位置的值. 如果都是整数运算,可以设置 dtype=int,而非 dtype=float, 可以省下不少空间. linux 系统下,使用 top 命令,可以很容易地看到内存(%MEM) 的

  • Python numpy矩阵处理运算工具用法汇总

    numpy是用于处理矩阵运算非常好的工具.执行效率高,因为其底层是用的是C语句 使用numpy,需要将数据转换成numpy能识别的矩阵格式. 基本用法: numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0) 名称描述 object数组或嵌套的数列 dtype数组元素的数据类型,可选,例如:int64,int16,int32,float64等,位数越高,精度越高,但也更耗内存.

  • python3 numpy中数组相乘np.dot(a,b)运算的规则说明

    python np.dot(a,b)运算规则解析 首先我们知道dot运算时不满足交换律的,np.dot(a, b)与np.dot(b, a)是不一样的 另外np.dot(a,b)和a.dot(b)果是一样的 1.numpy中数组相乘np.dot(a,b)运算条件: 对于两数组a和b : 示例一: a = np.array([[3], [3], [3]]) # (3,1) b = np.array([2, 2, 1]) # (3,) print(a, "\na的shape", a.sha

  • Python Numpy 高效的运算工具详解

    目录 Numpy 介绍 优势 numpy常用属性 ndarray形状 二维数组 ndarray类型 创建ndarray时,指定其类型 基本操作 总结 Numpy 介绍 numpy num numerical 数值化 py python ndarray n 任意个 d dimension 维度 array 数组 n维 相同数组类型的集合 将数据组 转化为 ndarray类型 data = np.array(数组) import numpy as np data = np.array([[80,89

  • Python Numpy,mask图像的生成详解

    什么是掩膜(mask) 在numpy中,有一个模块叫做ma,这个模块几乎复制了numpy里面的所有函数,当然底层里面都换成了对自己定义的新的数据类型MaskedArray的操作. 我们来看最基本的array定义. An array class with possibly masked values. Masked values of True exclude the corresponding element from any computation. MaskedArray是一个可能带有掩膜信

  • Python NumPy教程之遍历数组详解

    NumPy 包包含一个迭代器对象numpy.nditer.它是一个高效的多维迭代器对象,使用它可以迭代数组.使用 Python 的标准迭代器接口访问数组的每个元素. # 用于遍历数组的 Python 程序 import numpy as geek # 使用排列方法创建数组 a = geek.arange(12) # 具有 3 行和 4 列的形状数组 a = a.reshape(3,4) print('Original array is:') print(a) print() print('Mod

  • Python NumPy教程之二元计算详解

    二元运算符作用于位,进行逐位运算.二元运算只是组合两个值以创建新值的规则. numpy.bitwise_and(): 此函数用于计算两个数组元素的按位与. 此函数计算输入数组中整数的底层二进制表示的按位与. 代码#1: # 解释 bitwise_and() 函数的 Python 程序 import numpy as geek in_num1 = 10 in_num2 = 11 print ("Input number1 : ", in_num1) print ("Input

  • Python对象类型及其运算方法(详解)

    基本要点: 程序中储存的所有数据都是对象(可变对象:值可以修改 不可变对象:值不可修改) 每个对象都有一个身份.一个类型.一个值 例: >>> a1 = 'abc' >>> type(a1) str 创建一个字符串对象,其身份是指向它在内存中所处的指针(在内存中的位置) a1就是引用这个具体位置的名称 使用type()函数查看其类型 其值就是'abc' 自定义类型使用class 对象的类型用于描述对象的内部表示及其支持的方法和操作 创建特定类型的对象,也将该对象称为该类

  • Python NumPy教程之数据类型对象详解

    每个 ndarray 都有一个关联的数据类型 (dtype) 对象.这个数据类型对象(dtype)告诉我们数组的布局.这意味着它为我们提供了以下信息: 数据类型(整数.浮点数.Python 对象等) 数据大小(字节数) 数据的字节顺序(小端或大端) 如果数据类型是子数组,它的形状和数据类型是什么. ndarray 的值存储在缓冲区中,可以将其视为连续的内存字节块.所以这些字节将如何被解释由dtype对象给出. 构造数据类型(dtype)对象 数据类型对象是 numpy.dtype 类的一个实例,

  • Python大批量搜索引擎图像爬虫工具详解

    python图像爬虫包 最近在做一些图像分类的任务时,为了扩充我们的数据集,需要在搜索引擎下爬取额外的图片来扩充我们的训练集.搞人工智能真的是太难了

  • Python NumPy 数组索引的示例详解

    目录 前言 1.访问数组元素 2.访问 2-D Arrays(数组) 3.访问 3-D Arrays(数组) 4.负索引 前言 NumPy(Numerical Python的缩写)是一个开源的Python科学计算库.使用NumPy,就可以很自然地使用数组和矩阵.NumPy包含很多实用的数学函数,涵盖线性代数运算.傅里叶变换和随机数生成等功能.本文主要介绍Python NumPy 数组索引及访问数组元素. 1.访问数组元素 数组索引与访问数组元素相同. 您可以通过引用其索引号来访问数组元素. Nu

  • python numpy中cumsum的用法详解

    Cumsum :计算轴向元素累加和,返回由中间结果组成的数组 重点就是返回值是"由中间结果组成的数组" 以下代码在python3.6版本运行成功! 下面看代码,定义一个2*2*3的数组,所以其shape是2,2,3,索引分别0,1,2 shape 索引 2 0 2 1 3 2 代码: import numpy as np arr = np.array([[[1,2,3],[8,9,12]],[[1,2,4],[2,4,5]]]) #2*2*3 print(arr.cumsum(0))

随机推荐