我正在尝试初始化一个包含命名元组的 NumPy 数组。当我用数据初始化数组empty
并随后设置该数据时,一切正常;然而,当使用numpy.array
构造函数时,NumPy 并没有达到我的预期。
的输出
import numpy
data = numpy.random.rand(10, 3)
print data[0]
# Works
a = numpy.empty(
len(data),
dtype=numpy.dtype([('nodes', (float, 3))])
)
a['nodes'] = data
print
print a[0]['nodes']
# Doesn't work
b = numpy.array(
data,
dtype=numpy.dtype([('nodes', (float, 3))])
)
print
print b[0]['nodes']
是
[ 0.28711363 0.89643579 0.82386232]
[ 0.28711363 0.89643579 0.82386232]
[[ 0.28711363 0.28711363 0.28711363]
[ 0.89643579 0.89643579 0.89643579]
[ 0.82386232 0.82386232 0.82386232]]
这是 NumPy 1.8.1。
关于如何组织array
构造函数的任何提示?