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
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!
相关推荐
-
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))
随机推荐
- Powershell实现加密解密文本文件方法实例
- 使用 bootstrap modal遇到的问题小结
- js获取浏览器高度 窗口高度 元素尺寸 偏移属性的方法
- redis实现多进程数据同步工具代码分享
- asp.net 验证码的简单制作(vb.net+C#)
- ASP.NET 链接 Access 数据库路径问题最终解决方案
- javascript实现非常简单的小数取整功能示例
- J2ME/J2EE实现用户登录交互 实现代码
- C#运算符大全_各种运算符号的概述及作用
- 浅谈解决360兼容模式浏览器的方法
- rudy 继承 概念
- VS中模仿WPF模板创建最简单的WPF程序
- SQLSERVER 创建索引实现代码
- 基于session_unset与session_destroy的区别详解
- jquery用data方法获取某个元素上的事件
- jQuery中prepend()方法使用详解
- JavaScript 中级笔记 第二章
- tomcat antiResourceLocking antiJARLocking 的作用和用法
- 解析php安全性问题中的:Null 字符问题
- C++数据精度问题(对浮点数保存指定位小数)