Python ndarray 转成 array

介绍
在 Python 的数据分析和科学计算领域中,经常使用到 numpy 库。其中,ndarray 是 numpy 库中最重要的一个对象,它是一个多维数组,提供了许多对数组进行快速操作的功能。然而,在某些情况下,我们可能需要将 ndarray 对象转换成 array 对象。本文将详细介绍如何将 ndarray 对象转换成 array 对象,并给出一些示例代码和运行结果。
ndarray 与 array
在介绍如何转换 ndarray 到 array 之前,我们先来了解一下 ndarray 和 array 的区别。
ndarray(N-dimensional array)是 numpy 库中最核心的对象之一,它是一个多维的、同类型元素的数组,可以用来表示向量、矩阵或更高维度的数组。array是 Python 标准库中的一个模块,它提供了一种能够表示、操作任何维度的数组对象。但需要注意的是,array对象中的元素类型必须是统一的。
ndarray 转 array
在 numpy 库中,可以使用 tolist() 方法将 ndarray 转换为 array。
import numpy as np
# 创建一个 2x3 的二维数组
ndarr = np.array([[1, 2, 3], [4, 5, 6]])
# 将 ndarray 转换为 array
arr = ndarr.tolist()
print(arr)
运行结果如下:
[[1, 2, 3], [4, 5, 6]]
从运行结果可以看出,ndarray 对象 [[1, 2, 3], [4, 5, 6]] 成功地被转换成了 array 对象 [[1, 2, 3], [4, 5, 6]]。
示例代码
下面我们通过一些示例代码来演示如何将常见的不同维度的 ndarray 对象转换成 array。
一维 ndarray 转 array
import numpy as np
# 创建一个一维数组
ndarr = np.array([1, 2, 3, 4, 5])
# 将一维 ndarray 转换为 array
arr = ndarr.tolist()
print(arr)
运行结果如下:
[1, 2, 3, 4, 5]
二维 ndarray 转 array
import numpy as np
# 创建一个 2x3 的二维数组
ndarr = np.array([[1, 2, 3], [4, 5, 6]])
# 将二维 ndarray 转换为 array
arr = ndarr.tolist()
print(arr)
运行结果如下:
[[1, 2, 3], [4, 5, 6]]
三维 ndarray 转 array
import numpy as np
# 创建一个 2x2x3 的三维数组
ndarr = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]])
# 将三维 ndarray 转换为 array
arr = ndarr.tolist()
print(arr)
运行结果如下:
[[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]
注意事项
在将 ndarray 转换为 array 过程中,需要注意以下几点:
- 转换后的
array对象中的元素类型会根据原始ndarray的元素类型进行自动匹配。 - 转换过程中会损失
ndarray一些特有的功能,如形状、维度等信息。
不过,如果仅仅是希望将 ndarray 转换为 list,而不是 array,可以直接使用 tolist() 方法。
总结
本文介绍了如何将 ndarray 对象转换为 array 对象。通过示例代码和运行结果,我们可以清楚地了解到转换过程以及注意事项。掌握了 ndarray 转换为 array 的方法,可以更灵活地在数据分析和科学计算中运用 numpy 库。
极客笔记