NumPy 教程 之 NumPy Ndarray 对象 5

简介: **NumPy的ndarray是核心数据结构,是同类型的多维数组。它包含数据指针、数据类型(dtype)、形状和跨度。创建ndarray用`numpy.array()`,参数包括对象、数据类型、复制选项等。例如,`a = np.array([1, 2, 3, 4, 5], ndmin=2)`创建至少二维的数组。**

NumPy 教程 之 NumPy Ndarray 对象 5

NumPy Ndarray 对象

NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引。

ndarray 对象是用于存放同类型元素的多维数组。

ndarray 中的每个元素在内存中都有相同存储大小的区域。

ndarray 内部由以下内容组成:

一个指向数据(内存或内存映射文件中的一块数据)的指针。

数据类型或 dtype,描述在数组中的固定大小值的格子。

一个表示数组形状(shape)的元组,表示各维度大小的元组。

一个跨度元组(stride),其中的整数指的是为了前进到当前维度下一个元素需要"跨过"的字节数。

跨度可以是负数,这样会使数组在内存中后向移动,切片中 obj[::-1] 或 obj[:,::-1] 就是如此。

创建一个 ndarray 只需调用 NumPy 的 array 函数即可:

numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)

参数说明:

名称 描述
object 数组或嵌套的数列
dtype 数组元素的数据类型,可选
copy 对象是否需要复制,可选
order 创建数组的样式,C为行方向,F为列方向,A为任意方向(默认)
subok 默认返回一个与基类类型一致的数组
ndmin 指定生成数组的最小维度

实例 3

最小维度

import numpy as np
a = np.array([1, 2, 3, 4, 5], ndmin = 2)
print (a)
输出如下:

[[1 2 3 4 5]]

目录
相关文章
|
1月前
|
存储 索引 Python
NumPy 教程 之 NumPy Ndarray 对象 6
**NumPy的ndarray对象是核心特征,是同类型元素的多维数组。它包括数据指针、数据类型(dtype)、形状元组和跨度元组。创建数组使用`numpy.array()`,可通过`dtype`指定数据类型。例如:`a = np.array([1, 2, 3], dtype=complex)`生成复数数组。内存布局遵循C或F顺序。**
15 0
|
1月前
|
存储 Python
NumPy 教程 之 NumPy 创建数组 8
**NumPy创建数组:使用`zeros_like`创建与原数组形状相同的零数组。`zeros_like(a, dtype=None, order='K', subok=True, shape=None)`基于给定数组`a`的形状,生成所有元素为0的新数组。参数可定制数据类型、存储顺序和形状。实例:创建一个3x3的零矩阵。**
30 7
|
1月前
|
Python
NumPy 教程 之 NumPy 创建数组 6
`NumPy`教程中介绍如何用`numpy.ones`创建数组:生成指定形状的全1数组。例如,`np.ones(5)`产生一维浮点数数组,`np.ones([2,2], dtype=int)`则创建二维整数数组。输出: ``` [1. 1. 1. 1. 1.] [[1 1] [1 1]] ``` 形状、数据类型(默认`None`为浮点型)和内存排列顺序(默认'C')可自定义。
23 3
|
30天前
|
存储 Python
NumPy 教程 之 NumPy 创建数组 9
NumPy教程:`numpy.ones_like`创建与给定数组形状相同的全1数组;`numpy.ones`则直接指定形状。区别在于`ones`需提供形状,`ones_like`借用已知数组形状。参数包括数组`a`(形状源),`dtype`(数据类型),`order`(内存顺序),`subok`(返回子类与否),和可选的`shape`。
15 1
|
1月前
|
存储 Python
NumPy 教程 之 NumPy 创建数组 1
**NumPy创建数组教程:** 使用`numpy.empty`快速生成未初始化的数组,形如`numpy.empty(shape, dtype=float, order='C')`,设定数组形状、数据类型和内存排列顺序。
22 4
|
1月前
|
存储 索引 Python
NumPy 教程 之 NumPy Ndarray 对象 2
**NumPy的ndarray对象是多维数据的核心,它存储同类型元素,具有形状和 strides。形状描述数组维度大小,strides指示元素间字节偏移。通过`numpy.array()`创建,可指定数据类型、复制选项等。例如,`numpy.array(list, dtype, copy=True, order='C', subok=False, ndmin=0)`。**
23 4
|
1月前
|
Python
NumPy 教程 之 NumPy 数组属性 7
NumPy教程:数组属性聚焦秩(rank)和轴(axis),表示维度数量。`ndarray.flags`揭示内存细节,如C/F_CONTIGUOUS标志指示数据连续性,OWNDATA检查内存所有权,WRITEABLE允许写入,ALIGNED确保硬件对齐,UPDATEIFCOPY涉及副本更新。
28 4
|
1月前
|
Python
NumPy 教程 之 NumPy 数组属性 8
NumPy教程讲解数组属性,数组的秩表示维度数,如一维数组秩为1,二维为2。每个线性数组是轴,二维数组由两轴组成。`x=np.array([1,2,3,4,5])`,打印`x.flags`显示数组连续性、数据所有权、可写性等信息。
28 2
|
1月前
|
Python
NumPy 教程 之 NumPy 数组属性 5
NumPy数组的秩是其维度数,如一维数组秩为1,二维为2。数组的每个线性部分称为轴,`ndarray.shape`展示数组的维度,返回元组,长度即秩。`reshape`函数可改变数组尺寸。例如: ```markdown import numpy as np a = np.array([[1,2,3],[4,5,6]]) b = a.reshape(3,2) # 输出: [[1 2] [3 4] [5 6]] ``` 这里,`a.shape`是`(2,3)`,秩为2,`b`通过reshape变为秩为2的\(3 \times 2\)数组。
22 3
|
1月前
|
存储 索引 Python
NumPy 教程 之 NumPy Ndarray 对象 4
**NumPy的ndarray对象是核心特征,是同类型元素的多维数组。它包括数据指针、数据类型(dtype)、形状元组和跨度元组。创建ndarray使用`numpy.array()`,参数如object(输入数据)、dtype(数据类型)等。例如:`a = np.array([[1, 2], [3, 4]])`创建了一个二维数组。**
17 2