Python中的3D数组,具有多种数据类型

时间:2013-08-03 11:48:24

标签: python arrays python-2.7 numpy

我需要在numpy中创建一个具有多种数据类型的3D数组。

arr[int][str][int] 

我尝试将np.newaxisrec.array结合使用。

编辑: 我打算让第一列是文本或字符串。 然后第二列保存整数值。

然后跨越多个表格作为3D数组。

enter image description here

就像在这张照片中一样,每张桌子只有两列。 第一个包含字符串,第二个包含整数值

1 个答案:

答案 0 :(得分:0)

您可以创建如下所示的np.recarray

a = np.recarray(4,dtype=[('col1',int),('col2','|S10'),('col3',int)])
a['col1'] = range(4)
a['col2'] = ['a', 'b', 'c', 'd']
a['col3'] = range(11,15)

print a
# [(0, 'a', 11) (1, 'b', 12) (2, 'c', 13) (3, 'd', 14)]

如果您想使用2D数组,请使用dtype=object

a = np.array([[0,1,2,3],['a','b','c','d'],[11,12,13,14]], dtype=object)

print a
#[[0 1 2 3]
# ['a' 'b' 'c' 'd']
# [11 12 13 14]]