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 库。