Numpy对象——ndarray

本文介绍了Numpy库中的核心对象ndarray,包括其作为多维数据集合的特点,创建方法,以及重要属性如shape、dtype、data等。通过示例展示了如何使用array函数创建和操作ndarray,探讨了ndarray在数据分析和计算中的重要作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.Numpy简介

Numpy库可以说是python旗下的一个对数据进行具体分析的一个库。支持大量的维度数组与矩阵运算比如说线性代数、傅里叶变换、随机数等,它还有一个非常强大的N维数组对象,就是我们今天要介绍的ndarray对象。

二.ndarray对象

ndarray是一个以0索引开始的一系列同类型数据集合。在内存中,每个元素都有相同储存大小的区域。

(一)ndarray的创建

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

()里的为ndarray的一些参数和属性
1.object:数组或嵌套的数列
2.dtype:数组元素的数据类型对象
3.copy:对象是否需要复制
4.order:创建数组的样式,C为行方向,F为列方向,A为任意方向(默认)
5.subok:默认返回一个与基类类型一致的数组
6.ndmin:指定生成数组的最小维度
7.shape:数组的形状
8.data:指向存放数组数据的python buffer对象
9.flat:返回数组的一维迭代器
10.imag:返回数组的虚部
11.real:返回数组的实部

下面创建一个ndarray对象:

a = np.array(range(30)).reshape(5,6) #reshape()中的第一个参数为行数,第二个为列数

在这里插入图片描述

ndarray创建好以后,我们可以查看一些常用的属性:

1.ndim——数组的维度

a.ndim

此数组的维度则为2

2.shape——数组的形状

a.shape

在这里插入图片描述

3.data——指向存放数组数据的python buffer对象

a.data

在这里插入图片描述

4…flat——返回数组的一维迭代器

a.flat

在这里插入图片描述

(二)array函数
Array()函数是返回一个数组的函数。
表达方式:numpy.array(object, dtype=None, copy=True, order=None, subok=False, ndmin=0)
数据类型:字符,数据

np.array(['a','b','c'])

在这里插入图片描述

np.array([['a','b','c'],['d','e','f']])

在这里插入图片描述

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

在这里插入图片描述

import numpy as np 
a = np.array([1,  2,  3], dtype = complex)  
print (a)

在这里插入图片描述

### 如何将PIL Image对象转换为numpy ndarray 可以利用 `numpy` 库中的 `np.array()` 方法轻松实现从 PIL 图像对象NumPy 数组的转换。具体来说,通过调用该方法并将 PIL 图像作为参数传入即可完成转换[^3]。 以下是具体的代码示例: ```python import numpy as np from PIL import Image # 打开一张图片并加载其数据 image = Image.open('example.jpg') # 将PIL图像对象转换为NumPy数组 image_np = np.array(image) print(type(image_np)) # 输出:<class 'numpy.ndarray'> ``` 上述代码中,`Image.open('example.jpg')` 加载了一张名为 `example.jpg` 的图像文件,并将其存储为 PIL 图像对象。随后,通过 `np.array(image)` 完成了从 PIL 图像对象NumPy 数组的转换[^2]。 需要注意的是,在某些情况下,原始图像可能不是 RGB 或 RGBA 格式(例如灰度图)。此时,可以通过 `.convert("RGB")` 明确指定目标颜色模式后再进行转换: ```python image_rgb = image.convert("RGB") image_np = np.array(image_rgb) ``` 这样能够确保最终得到的 NumPy 数组具有预期的颜色通道结构[^1]。 #### 数据验证与属性获取 一旦成功完成了转换,还可以进一步提取有关新创建的 NumPy 数组的信息,比如它的尺寸或者像素值范围等特性。下面展示了一个简单例子来演示这些功能的应用场景之一——计算整个图像所有像素点亮度均值的方法如下所示: ```python mean_pixel_value = np.mean(image_np) print(f"Mean Pixel Value: {mean_pixel_value}") ``` 以上就是关于如何把一个标准库支持下的 Python Imaging Library (即"Pillow", forked version of PIL) 中定义好的图像实例转变为可供科学计算使用的多维数值型列表表示形式的过程介绍以及实际操作指南。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值