【Numpy数据处理】ndarray介绍

语言: CN / TW / HK

highlight: a11y-dark theme: orange


携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第29天,点击查看活动详情

1. ndarray的属性

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

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

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

代码演示如下所示: ```python 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) # 数组元素的类型 ``` 代码运行结果如下图所示:

image.png

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

2. 数组的形状

关于数组形状,我们直接附上一段代码来理解: python 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) 以上代码运行结果如下图所示:

image.png

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

3. ndarray的类型

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

在我们创建array的同时是可以指定数组ndarray类型的。具体语法如下所示: python 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) 代码运行结果如下图所示:可以发现结果中的数组元素带有小数点了。

image.png

当然,数组也可以存储字符串: python b = np.array(["python", "hello", "1"], dtype=np.string_) print(b) 运行结果如下图所示:

image.png