Numpy 数据处理 ndarray使用详解

作者:ZacheryZHANG 时间:2021-01-30 18:05:11 

1. ndarray的属性

数组的属性反映了数组本身固有的信息。常用的查看数组属性的相关语法如下表格所示:

属性名称属性解释
ndarray.shape数组维度的元组
ndarray.ndim数组维数
ndarray.size数组中的元素数量
ndarray.itemsize一个数组元素的长度(字节)
ndarray.dtype数组元素的类型

下面,我们将针对ndarray的各种属性,进行代码演示。

代码演示如下所示:

import numpy as np
score = np.array([[1, 2, 3], [4, 5, 6], [1, 1, 1], [2, 2, 2]])
print(score.shape)  # 数组维度的元组
print(score.ndim)  # 数组维数
print(score.size)    # 数组中的元素数量
print(score.itemsize)  # 一个数组元素的长度(字节)
print(score.dtype)  # 数组元素的类型

代码运行结果如下图所示:

Numpy 数据处理 ndarray使用详解

注意:关于数组的维度,想知道数组有几维,最简单的办法就是看数组最外侧有多少个中括号,以上代码中传入的数组score有两个中括号,因此数组维数为2。

2. 数组的形状

关于数组形状,我们直接附上一段代码来理解:

c = np.array([[[1, 2, 3], [4, 5, 6], [1, 1, 1], [2, 2, 2]], [[1, 2, 3], [4, 5, 6], [1, 1, 1], [2, 2, 2]]])
print("c的数组维度:", c.shape)

以上代码运行结果如下图所示:

Numpy 数据处理 ndarray使用详解

此处,输出的结果(2,4,3)(2,4,3)(2,4,3)的含义为:在最外层有2个二维数组。在二维数组里面,有4个一维数组。在一维数组里,有3个元素。

3. ndarray的类型

dtype是numpy.dtype类型,基本上之前所接触过的数据类型,这里面都支持。例如,bool、int32、int64、float32、uint8、complex64等等。

在我们创建array的同时是可以指定数组ndarray类型的。具体语法如下所示:

a = np.array([[[1, 2, 3], [4, 5, 6], [1, 1, 1], [2, 2, 2]], [[1, 2, 3], [4, 5, 6], [1, 1, 1], [2, 2, 2]]], dtype=np.float32)
print(a.dtype)
print(a)

代码运行结果如下图所示:可以发现结果中的数组元素带有小数点了。

Numpy 数据处理 ndarray使用详解

当然,数组也可以存储字符串:

b = np.array(["python", "hello", "1"], dtype=np.string_)
print(b)

运行结果如下图所示:

Numpy 数据处理 ndarray使用详解

来源:https://juejin.cn/post/7136941964393447454

标签:Numpy,数据处理,ndarray
0
投稿

猜你喜欢

  • 深入分析python中整型不会溢出问题

    2022-11-20 01:19:13
  • 超链“确认”对话框confirm

    2008-05-16 11:42:00
  • asp 类型转换函数大全第1/2页

    2011-04-07 11:06:00
  • Qzoneing主题视觉设计分享

    2009-07-21 18:12:00
  • 关于ThinkPhp 框架表单验证及ajax验证问题

    2023-11-15 06:33:05
  • django框架基于queryset和双下划线的跨表查询操作详解

    2022-02-22 04:30:32
  • 小白学Python之实现OCR识别

    2022-02-12 20:35:48
  • Python3读写ini配置文件的示例

    2023-05-29 22:59:21
  • Python入门教程(十四)Python的集合

    2022-11-29 21:21:09
  • 详细整理python 字符串(str)与列表(list)以及数组(array)之间的转换方法

    2022-03-16 09:40:28
  • Python实现按逗号分隔列表的方法

    2023-06-08 08:32:16
  • 教你用Python写安卓游戏外挂

    2023-10-21 17:43:29
  • Python 自动补全(vim)

    2021-11-06 16:54:42
  • Python面向对象实现方法总结

    2022-03-11 08:50:41
  • python使用html2text库实现从HTML转markdown的方法详解

    2023-07-18 09:00:03
  • [欣赏] 情景互动广告

    2008-08-06 12:59:00
  • python中asyncio异步编程学习

    2022-10-20 06:19:37
  • python 对给定可迭代集合统计出现频率,并排序的方法

    2023-02-10 17:28:47
  • 如何取得所有的Session变量

    2008-06-08 13:59:00
  • pandas的排序、分组groupby及cumsum累计求和方式

    2023-07-20 07:00:39
  • asp之家 网络编程 m.aspxhome.com