目录

前言

一、ndarray产生方法

1. np.array()

2.np.arrage()

3.np.linspace()

二、ndarray的属性

总结


前言

numpy库可以用来处理矩阵相关的数学运算,相比于Python自带的列表,其功能更强大,且运行速度更快。下面介绍一些常用的numpy库的用法。

一、ndarray产生方法

ndarray是numpy模块的基本数据模块,它是由一组数字组成一维或者多维的阵列 。Numpy可以有多种方法产生ndarray,下面介绍其中的常用的方法。

1. np.array()

用法:np.array(object, dtype=None, ndmin=0)

object:任何提供array接口的对象,如列表,元组等

dtype:元素类型,如int,float等

ndmin: nd array的维度(dimention)

np.array()方法可以将任何提供array接口的对象转换为ndarray,可以通过参数来调整ndarray的元素类型以及ndim的维度,举例如下:

>>> np.array((2,3,4))  #元组转换为ndarray
array([2, 3, 4])
>>> np.array((1.2,3,4)) #默认数据类型和原对象保持一致
array([1.2, 3. , 4. ])
>>> np.array([2,3,4,5],dtype=float,ndmin=2) #dtype来改变数据类型,ndmin确定维度
array([[2., 3., 4., 5.]])
>>> np.array([x*x for x in range(0,5)],dtype=float,ndmin=2) #生产列表来产生ndarray
array([[ 0.,  1.,  4.,  9., 16.]])

2.np.arrage()

用法:np.arange([start,] stop[, step,], dtype=None)

start:起始数字

stop:结束数字,返回的array不包含该数

step:步长

dtype:数据类型,如果不指定则根据给定条件的数据类型来定

np.arange()方法根据给定的起始和结束以及步长返回一个一维的ndarray,它的功能和Python本身的range()方法类似,所不同的是np.arange()更为强大,它可以返回float的元素组成的array,而range()只能返回int的list。下面是代码举例:

>>> np.arange(1,10) #返回一维array
array([1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> np.arange(1,10,2) #返回一维array,步长为2
array([1, 3, 5, 7, 9])
>>> np.arange(1,10,2,dtype=float) #指定dtype
array([1., 3., 5., 7., 9.])
>>> np.arange(1,5,0.5) #给定条件有float,返回类型为float
array([1. , 1.5, 2. , 2.5, 3. , 3.5, 4. , 4.5])

3.np.linspace()

用法:linspace(start, stop, num=50, dtype=None, axis=0)

start:起始数字

stop:结束数字,返回的array包含该数

num:返回的值的个数

dtype:数据类型,如果不指定则根据给定条件的数据类型来定

np.linspace()方法和np.arange()方法一样都是返回从起始到结束的array,不同点是np.linspace()用的是num个数代替步长step来确定返回值,另一点是np.linspace()方法默认包含stop数。下面是代码举例:

>>> np.linspace(10,2) #返回10到2的array,默认为50个数,默认为float
array([10.        ,  9.83673469,  9.67346939,  9.51020408,  9.34693878,9.18367347,  9.02040816,  8.85714286,  8.69387755,  8.53061224,8.36734694,  8.20408163,  8.04081633,  7.87755102,  7.71428571,7.55102041,  7.3877551 ,  7.2244898 ,  7.06122449,  6.89795918,6.73469388,  6.57142857,  6.40816327,  6.24489796,  6.08163265,5.91836735,  5.75510204,  5.59183673,  5.42857143,  5.26530612,5.10204082,  4.93877551,  4.7755102 ,  4.6122449 ,  4.44897959,4.28571429,  4.12244898,  3.95918367,  3.79591837,  3.63265306,3.46938776,  3.30612245,  3.14285714,  2.97959184,  2.81632653,2.65306122,  2.48979592,  2.32653061,  2.16326531,  2.        ])
>>> np.linspace(1,10,10) #1到10的10个数
array([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.])
>>> np.linspace(1,10,2,dtype=int)  #制定数据类型为int
array([ 1, 10])

二、ndarray的属性

ndarray的属性如下表:

属性         描述
ndim ndarray轴(维度)的个数,轴的个数被称作秩
shape ndarray的形状,如2X3的阵列,其shape为(2,3)
size ndarray的元素个数
dtype ndarray的元素数据类型,如int32
itemsize ndarray的元素的大小

下面进行举例说明:

>>> import numpy as np
>>> ary=np.arange(1,10)
>>> ary
array([1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> ary.ndim
1
>>> ary.shape
(9,)
>>> ary.size
9
>>> ary.dtype
dtype('int32')
>>> ary.itemsize
4

总结

本文介绍了numpy的ndarray的属性和基本的产生方法,关于ndarray,numpy库还提供了很多其他处理方法,后续再进行介绍

Python的numpy库ndarray简介相关推荐

  1. Python数据分析Numpy库方法简介(一)

    Numpy功能简介: 1.官网:www.numpy.org 2.特点:(1)高效的多维矩阵/数组; (2);复杂的广播功能 (3):有大量的内置数学统计函数 矩阵(多维数组): 一维数组:  ([ 值 ...

  2. Python数据分析Numpy库方法简介(三)

    补充: np.ceil()向上取整 3.1向上取整是4 np.floor()向下取整 数组名.resize((m,n)) 重置行列 基础操作 np.random.randn()符合正态分布(钟行/高斯 ...

  3. Python:numpy库中的一些函数简介、使用方法之详细攻略

    Python:numpy库中的一些函数简介.使用方法之详细攻略 目录 numpy库中的一些函数简介.使用方法 1.np.concatenate() 1.1.函数案例 1.2.函数用法 numpy库中的 ...

  4. Python的Numpy库的ndarray对象常用构造方法及初始化方法

    Python的Numpy库的ndarray对象常用构造方法及初始化方法 本文收集Python的Numpy库的ndarray对象常用的构造方法及初始化方法,会不断更新. 目录 1 直接赋值初始化一个nd ...

  5. db2top详细使用方法_Py之PIL:Python的PIL库的简介、安装、使用方法详细攻略

    Py之PIL:Python的PIL库的简介.安装.使用方法详细攻略 目录 PIL库的简介 PIL库的安装 PIL库的用方法 1.几何图形的绘制与文字的绘制 2.绘制图形的各种案例 PIL库的简介 PI ...

  6. Py之pyserial:Python的pyserial库的简介、安装、使用方法之详细攻略

    Py之pyserial:Python的pyserial库的简介.安装.使用方法之详细攻略 目录 pyserial库的简介 pyserial库的安装 pyserial库的使用方法 pyserial库的简 ...

  7. Py之pygame:Python的pygame库的简介、安装、使用方法详细攻略

    Py之pygame:Python的pygame库的简介.安装.使用方法详细攻略 目录 pygame库的简介 pygame库的安装 pygame库的使用方法 pygame库的简介 PyPoice是SDL ...

  8. Py之dominate:python的dominate库的简介、安装、使用方法之详细攻略

    Py之dominate:python的dominate库的简介.安装.使用方法之详细攻略 目录 dominate库的简介 dominate库的安装 dominate库的使用方法 dominate库的简 ...

  9. Py之PIL:Python的PIL库的简介、安装、使用方法详细攻略

    Py之PIL:Python的PIL库的简介.安装.使用方法详细攻略 目录 PIL库的简介 PIL库的安装 PIL库的用方法 1.几何图形的绘制与文字的绘制 2.绘制图形的各种案例 PIL库的简介 PI ...

最新文章

  1. Java Persistence API中的FetchType LAZY和EAGER之间的区别?
  2. 源码:我的关于NLP的博客(持续更新中...)
  3. 通过系统调用open来查看flag
  4. infinity mysql_MySql锁机制
  5. pandas对每十行做批量操作_pandas批量处理数据
  6. PHP面向对象(OOP)编程入门教程
  7. 【COMA】一种将团队回报拆分为独立回报的多智能体算法
  8. 别让腾讯“科技向善”太孤独!
  9. 运营商回应 5G 商用放号推迟;iPhone 或推出渐变色;GoLand 2019.2.1 发布 | 极客头条...
  10. pythonmkdir语法错误_Python:windows创建文件夹时出错操作系统.mkdir使用方括号
  11. Dubbo的架构体系
  12. php dcom扩展配置,PHP: 运行时配置 - Manual
  13. 74ls系列芯片的分类
  14. php 在线拍卖系统源码,php拍卖系统,源码
  15. 现有的DRM数字版权保护技术大全
  16. [Go]基于Go语言的Web路由转发,多个网站共享一个端口(新版本,支持WebSocket)
  17. html桂花酿网页,桂花酒的做法
  18. linux桌面lxde 安装_在Ubuntu上,如何安装轻量的LXDE桌面
  19. IMPERVA-WAF 更换网卡
  20. 音频剪辑合成 php,教你如何剪辑多个视频合并成一个 视频剪辑合并软件

热门文章

  1. c语言frequency函数,Excel中frequency()函数的进一步讲解
  2. 【ssl认证、证书】openssl genrsa 命令详解
  3. 2025年全球物联网蜂窝连接数将破24亿
  4. 盘点勒索病毒造成大事件
  5. 一篇文章让您了解HTTPS
  6. FFMPEG Qt视频播放器之美化界面
  7. 技术群里装偶遇撒狗粮?手起刀落人抬走!
  8. 将你的⭐Hexo博客⭐部署到微信小程序上--易操作
  9. 【echarts】柱图+折线图
  10. NCBI/BIG测序数据下载---通过Aspera下载拟南芥T2T原始数据