如何将一维图元数组转换为二维Numpy数组
在这篇文章中,我们将讨论如何将一个一维图元数组转换为一个numpy数组。
示例 :
输入 :[(1,2,3),(‘Hello’,’Hey’)]
输出 :[[‘1’ ‘2’ ‘3’] [‘Hi’ ‘Hello’ ‘Hey’] ]#NDArray
方法1:使用map
map是一个用来为Iterable(即数组)中的每个项目执行一个函数的函数。
示例:
在这里,我们首先导入Numpy并定义了1D的图元数组。这个数组包含一个0D数组,即图元,进一步使用Map函数,我们正在浏览数组中的每一个项目,并将它们转换为NDArray.Map对象被转换为一个列表数组,然后再转换为NDArray,最后,我们使用ndim属性检查所产生的数组的尺寸。
# importing Numpy
import numpy as np
# 1d Array of Tuple
arr = [(1, 2, 3), ('Hi', 'Hello', 'Hey')]
x = map(np.array, arr)
# Changing map object to a list, then
# to an NDarray
x = np.array(list(x))
print(x)
# Checking the Dimension of the Resulting
# NDArray
print(x.ndim)
输出:
[['1' '2' '3']
['Hi' 'Hello' 'Hey']]
2
方法2
这是一种不使用地图或任何其他函数的方法,只是基本的循环。
示例:
在这里,我们定义了图元的1D数组。这个数组包含0D数组,即图元,然后定义一个空数组,我们进一步迭代’arr’中的每个项目,然后我们为每个图元中的项目定义另一个空数组,我们还迭代’arrs’中的每个项目,即图元。在’items’数组中追加元组的每个项目。将’items’数组追加到’x’数组中。
import numpy as np
arr = [(1, 2, 3), ('Hi', 'Hello', 'Hey')]
x = []
for arrs in arr:
items = []
for item in arrs:
items.append(item)
x.append(items)
x = np.array(x)
print(x)
print(x.ndim)
输出:
[[‘1’ ‘2’ ‘3’] [‘Hi’ ‘Hello’ ‘Hey’]]
The Dimension is 2