【发布时间】:2016-08-25 19:57:08
【问题描述】:
我想声明一个带有特定格式元素的 numpy 数组 (arr),如下所示:
dt1 = np.dtype([('sec', '<i8'), ('nsec', '<i8')])
dt2 = np.dtype([('name', 'S10'), ('value', '<i4')])
arr = np.array([('x', dtype=dt1), ('y', dtype=dt2)])
结构是这样的:
arr['x'] = elements with the format dt1 (sec and nsec)
arr['y'] = array of n elements with the format dt2 (name and value)
其中的元素应该像这样访问:
arr['x']['sec'], arr['x']['nsec'], arr['y'][0]['name'] etc.
但我收到invalid syntax 错误。
在这种情况下正确的语法是什么?
【问题讨论】:
-
你能用文字解释一下你希望你的数组有什么结构吗?从您损坏的语法中看不出您正在尝试做什么。您希望阵列具有什么形状?你希望它的 dtype 是什么?你将如何访问它的元素?
-
我希望结构是这样的:
arr['x']= 格式为dt1的元素(sec和nsec)arr['y']=n元素的数组formatdt2(nameandvalue) 里面的元素可以这样访问:arr['x']['sec'],arr['x']['nsec'],arr['y'][0]['name']等等。可以这样表示吗?或者有解决办法吗? -
将该描述放在您的问题中,格式清晰。
标签: python arrays numpy syntax