python numpy数据类型_python numPy模块 与numpy里的数据类型、数据类型对象dtype

学习链接:http://www.runoob.com/numpy/numpy-tutorial.html

简介:

numPy是python语言的一个扩展库,是一个运行非常快的数学库,主要用于数组计算。它支持大量的维度与数据运算还针对数组运算提供大量的数学函数库。它包含:一个强大的n维数组对象ndarray、广播功能函数、整合c/c++/fortran的工具、线性代数、傅里叶变化与随机数生成等功能

numPy应用

numpy通常与SciPy(Scientific Python)和Matplotlib(绘图库)配合使用,来代替MatLab,构成为强大的科学计算环境,帮助我们通过Python学习数据科学或者机器学习

安装:

$pip install numPy

测试安装成功:

>>> from numpy import * #导入numpy库

>>> eye(4) #生成对角矩阵

array([[1., 0., 0., 0.],

[0., 1., 0., 0.],

[0., 0., 1., 0.],

[0., 0., 0., 1.]])

使用

*)numpy.linspace()

像python中的range一般,返回有指定的间隔产生的均匀间隔的数组,值得注意的是有dtype这个参数

*)numpy. arange()

值在半开区间里被生成[start,stop),对于int类型的参数,函数等同于python中的range,但是返回一个ndarray而不是list

但是对于非整形的step参数,每次返回的结果往往不一致,对于这种情况,选择numpy.linspace()更好

*)numpy.zeros()

返回由0填充的数组,能指定填充的0的dtype

*)numpy.column_stack()

将一系列的1-D(我认为是1维)arrays堆叠为column以此来将他们转化为一个2维array,二维数组被堆叠为和原来的一样

*)

*)list to array

参考链接:https://docs.scipy.org/doc/numpy/reference/generated/numpy.asarray.html

>>> a = [1, 2]

>>> np.asarray(a)

array([1, 2])

numpy random模块参考链接:https://www.cnblogs.com/hhh5460/p/4324967.html#top(官方文档翻译)

*)np.random.randint(low[,high,size,dtype])

参考链接:https://www.jianshu.com/p/36a4bbb5536e

>>> np.random.randint(0,20,4)

array([ 1, 9, 17, 11])

>>> np.random.randint(0,20,[4,1])#结果中包含4个数组,每个一个

array([[16],

[19],

[ 5],

[ 9]])

>>> np.random.randint(0,20,[4])

array([ 4, 6, 11, 14])

>>> np.random.randint(0,20,4,1)

Traceback (most recent call last):

File "", line 1, in

File "mtrand.pyx", line 973, in mtrand.RandomState.randint

TypeError: data type not understood

1)np.random.normal()生成高斯分布的概率密度随机数

参考链接:https://blog.csdn.net/qiqiaiairen/article/details/52505667

这个方法返回一个正态分布的数组?(正态分布、又称高斯分布、钟形曲线)

numpy.random.normal(loc=0.0, scale=1.0, size=None)

参数含义:

loc:(float类型)概率分布的均值,是对应于整个分布的中心而言

scale:(float类型)概率分布的标准差(标准差反应集合内个体的离散程度,越大越离散),对应于分布的宽度而言(即高度一定?),scale越大越矮胖,scale越小越瘦高

size:(int or tuple of ints类型)输出的shape(?),默认为None,只输出一个值

这个方法返回一个正态分布的数组

>>> numpy.random.normal(0,1,20)

array([-0.98305884, -0.79340779, 0.69865242, 1.10930775, 0.17458143,

0.88452427, 0.92862304, -1.27837941, -0.88772762, 0.86100981,

3.06262977, 1.66589188, -1.34269035, -0.13672729, 0.01154996,

-1.88304306, 0.35375017, -0.88784919, 2.77849309, 0.68915905])

2)np.range与range

range是python自带的库

参考链接:https://blog.csdn.net/lanchunhui/article/details/49493633

三个参数(S,E,Step_size)第一个参数是起点,第三个是步长,返回一个不包括第二个参数的数据序列

numpy里的数据类型、数据类型对象dtype

numpy 支持的数据类型比 Python 内置的类型要多很多,基本上可以和 C 语言的数据类型对应上,其中部分类型对应为 Python 内置的类型。详情见参考链接

数据类型对象 (dtype)

dtype是用来描述与数组对应的内存区域如何使用(懵逼,不只有一种使用方法吗?)这依赖如下几个方面:

数据的类型(整数,浮点数或者 Python 对象)

数据的大小(例如, 整数使用多少个字节存储)

数据的字节顺序(小端法或大端法)

字节顺序是通过对数据类型预先设定"<"或">"来决定的。"<"意味着小端法(最小值存储在最小的地址,即低位组放在最前面)。">"意味着大端法(最重要的字节存储在最小的地址,即高位组放在最前面)。

在结构化类型的情况下,字段的名称、每个字段的数据类型和每个字段所取的内存块的部分

如果数据类型是子数组,它的形状和数据类型

dtype 对象是使用以下语法构造的:

numpy.dtype(object, align, copy)

object - 要转换为的数据类型对象

align - 如果为 true,填充字段使其类似 C 的结构体。(继续懵逼)

copy - 复制 dtype 对象 ,如果为 false,则是对内置数据类型对象的引用

创建dtype的例子:

>>> dt=np.dtype(np.int32)# 使用标量类型#不要忘记前面的np.

>>> print(dt)

int32#直接输出的这个

>>>

之后有列举了一些创建dtype的其他实例,介绍了一些特殊的格式如:

int8, int16, int32, int64 四种数据类型可以使用字符串 'i1', 'i2','i4','i8' 代替

特殊的有一个字节顺序标注的

import numpy as np

# 字节顺序标注

dt = np.dtype('

print(dt)

#结果

int32

之后又展示了结构化数据类型的创建

# 类型字段名可以用于存取实际的 age 列

import numpy as np

dt = np.dtype([('age',np.int8)])

a = np.array([(10,),(20,),(30,)], dtype = dt)

print(a['age'])

#结果:

[10 20 30]

问题

因为上面哪个“dtype是用来描述与数组对应的内存区域如何使用”的疑惑还没有解决,而且在后面我也没有看到dtype是怎样使用的,只是输出了int32之类的东西,难道上面哪一个“结构化”是使用,

而且numpy的一些方法如numpy.linspace()又dtype这个参数,我也不知道有什么用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/305499.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AWS 宣布创建“真正”开源的 Elasticsearch 分支

喜欢就关注我们吧&#xff01;Elasticsearch 和 Kibana 宣布变更开源许可证后引发了各方激烈讨论&#xff0c;但整起事件的另一个关键角色——被 Elastic 公司 CEO 发文怒斥的 AWS 却一直没有发声。然而就在今日&#xff0c;AWS 宣布将基于目前仍为开源状态的 Elasticsearch 和…

备忘贴,请勿看

今天看了一个黑鹰的动画教程&#xff0c;教程中提到了对白宫***&#xff0c;结果猜解出用户名和密码分别是admin和password。感觉不太对吧&#xff0c;[url]www.whitehouse.org[/url]就这么简单&#xff1f;估计有两种可能&#xff0c;一是教程作者先把网站黑掉了&#xff0c;再…

数控车椭圆编程实例带图_数控车床任意位置椭圆宏程序编程,内附实例程序!...

不在轴线上的椭圆宏程序编制也没有什么特殊的&#xff0c;只是改下偏置的数值罢了。椭圆的参数方程为&#xff1a;Xa*COSθYb*SINθ可改写为&#xff1a; #130*cos[#3] #3为参数方程对应的中角度#220*sin[#3]图中椭圆长半轴30mm&#xff0c;短半轴20mm&#xff0c;椭圆中心位置…

在服务器系统怎么设置地址怎么办,路由器怎么设置地址

路由器怎么设置地址路由器怎么设置地址呢?你是否也很想了解呢?今天我们就一起来看看相关内容吧!路由器怎么设置地址一、自动设置IP地址&#xff0c;使用DHCP服务器功能DHCP是路由器的一个特殊功能&#xff0c;使用DHCP功能可以避免因手工设置IP地址及子网掩码所产生的错误。(…

python迅雷_迅雷下载链接解析器。

1.[代码][Python]代码 Python语言: 迅雷下载链接解析器。 #!/usr/bin/env python #coding:utf-8 import os import base64 import sys def baseurl(argv): if len(argv) 2: url argv[1] else: print "Input Error!\n usage: %s url"%(argv [0]) sys.exit(1) if url…

祝贺 在线文件管理系统 访问量 超过500

到目前为止,<<在线文件管理系统>>一文已有超过500位网友访问过了&#xff0c;深感欣慰。祝贺一下&#xff0c;转载于:https://www.cnblogs.com/GISDEV/archive/2007/10/21/932384.html

dotNet Core 3.1 使用 Elasticsearch

Elasticsearch 是基于 Lucene 的搜索引擎。可以非常方便地实现分布式的全文搜索&#xff0c;本文介绍在 dotNet Core 3.1 中怎样使用 Elasticsearch 。版本dotnet Core &#xff1a;3.1Elasticsearch&#xff1a;7.6.1Kibana&#xff1a;7.6.1NEST&#xff1a;7.10.1Docker&am…

python笔试题 github_简单的python面试题,居然

晚上翻手机&#xff0c;看见一道网友发的python面试题求助帖&#xff0c;当时简单扫一眼就跳过了&#xff0c;但下来仔细想想觉得还蛮有趣&#xff0c;开电脑梳理下思路&#xff0c;因为没有官方答案&#xff0c;所以大家可以一起来做做&#xff0c;其中涉及的python知识点还是…

思科3550 IOS

两种方法升级思科3550 IOS 有两种方法做3550 IOS升级&#xff1a; int vlan 1 ip address 192.168.1.1 255.255.255.0 no shut int f0/1 no shut 默认的接口都VLAN 1下的 一使用.bin文件形式的IOS 1.copy tftp flash: 2.boot system flash:.bin 3.show boot 确定下次启动是用新…

沙洋有几个微服务群_集群 分布式 微服务

转自&#xff1a;https://blog.csdn.net/qq_37788067/article/details/79250623概念:集群是个物理形态&#xff0c;分布式是个工作方式。1.分布式&#xff1a;一个业务分拆多个子业务&#xff0c;部署在不同的服务器上2.集群&#xff1a;同一个业务&#xff0c;部署在多个服务器…

聊聊如何构建一支自驱团队(一)

每一个管理者都致力于构建一支自我驱动的团队&#xff0c;更有甚至&#xff0c;许多人公开宣称&#xff0c;在一支20人以下的团队其实是不用管理手段的&#xff0c;靠团队自驱就能实现团队的快速运作&#xff0c;但知易行难&#xff0c;如果不能根据组织特色灵活的运用管理手段…

java之for循环

/*for循环里i计数器需要用int声明* 本程序是计算*135。。。99。* i2处可以写成i,i 或者ii2如果间隔50 *显然不是一种好的方法*copyright paryjie qq:613972*/public class TextFor {public static void main(String[] args) {long result 0; //用result来存放结果。for(int i1…

action评测 osmo_前后双屏 大疆OSMO ACTION运动相机评测

2019年5月15日晚&#xff0c;大疆正式发布了旗下全新一代运动摄像机&#xff1a;OSMO ACTION。作为OSMO家族的新成员&#xff0c;这款产品的诞生其实一点也不意外&#xff0c;一方面是vlog视频的火爆加速了用户对拍摄设备的使用需求&#xff0c;另外一方面则是运动摄像机这块的…

在.NET Core 中实现健康检查

.NET Core中提供了开箱即用的运行状况检查&#xff0c;首先&#xff0c;我将在.NET Core API应用程序中执行运行状况检查&#xff0c;接下来&#xff0c;我们将使用DbContext集成SQL Server或数据库的运行状况检查&#xff0c;最后是如何实现自定义服务的运行状况检查。在ASP.N…

python3.7安装keras教程_Python3.7安装keras和TensorFlow的教程图解

win10 Python3.7安装keras深度学习集成包 TensorFlow 和Ubuntu下安装keras 在win10下安装 安装时必须检查你的python是否为64位&#xff0c;32位不支持&#xff01;&#xff01;&#xff01; 32 位卸载下载其中的64位在python官网 然后在 pip install --upgrade tensorflow 如果…

(1)学习数组,集合,IEnumerable接口,引申学习迭代器

发展:数组-->集合-->泛型 (1)数组 1. 数组数据结构是System.Array类的一个实例. 2. System.Array类的语法为 [SerializableAttribute] [ComVisibleAttribute(true)] public abstract class Array : ICloneable, IList, ICollection, IEnumerable 3. 下面看一个使用数组…

华为交换机初始化_华为交换机恢复出厂设置

华为交换机恢复出厂设置(2008-10-06 22:29:54)在设备重启时按CtrlB进入BOOT MENU之后&#xff0c;Press Ctrl-B to enter Boot Menu... 5Password :缺省为空&#xff0c;回车即可1. Download application file to flash2. Select application file to boot3. Display all files…

领域驱动设计-从贫血模型到充血模型

背景领域模型对象只是用来存储应用的数据。业务逻辑位于服务层中&#xff0c;管理域对象的数据。在服务层中&#xff0c;应用的每个实体对应一个服务类。这种模式大家是不是很熟悉&#xff0c;尤其是在中小项目或者项目刚启动的时候&#xff0c;都是怎么方便怎么来&#xff1b;…

python离群点检测_如何从熊猫DataFrame中检测峰点(离群值)

我有一个带有多个速度值的熊猫数据帧&#xff0c;这些速度值是连续移动的值&#xff0c;但它是一个传感器数据&#xff0c;因此我们经常在中间出现误差的情况下&#xff0c;移动平均值似乎也无济于事&#xff0c;所以我可以采用什么方法用于从数据中删除这些离群值或峰点&#…

普通故障处理流程

一般OA或者BOSS的用户报故障后流程如下。、从中心机房扫描微波如果基站端能扫描到&#xff0c;但是客户端无法扫描。基本可以排除 基站端设备正常&#xff08;除天线外&#xff09;。问题一般出在客户那里&#xff0c;比如客户端微波数据丢失&#xff0c;停电。天线问题&#x…