将字符串列表转换为预设dtyp的numpy数组

2024-04-28 09:29:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个stringsstring_list列表,我想将其转换为预先指定数据类型的1元素结构numpy数组:

string_list = ['123', '45', '6.7']
my_dtype = np.dtype([('a','i4'),('b','f4'),('c','f8')])

我想要的输出结果是:

^{pr2}$

有没有np.A类型这个转换的语法技巧?在


Tags: numpy元素列表stringmynp数组结构
2条回答

编辑请参见@hpaulj答案。列表必须转换为元组,列表会生成错误。在

对我来说,这是你想要的吗?在

string_list = ('123', '45.', '6.7')
b = np.array([string_list], dtype=[('a', '<i4'), ('b', '<f4'), ('c', '<f8')])

numpy 1.8.2版

结构数组的“行”的输入是元组:

In [464]: np.array([tuple(string_list)],dtype=my_dtype)
Out[464]: 
array([(123, 45.0, 6.7)], 
      dtype=[('a', '<i4'), ('b', '<f4'), ('c', '<f8')])

另一个有用的技巧是创建一个由所需的dtype组成的空数组,并一次填充一个字段。或者用元组逐行填充,或者用元组列表填充多行。在

相关问题 更多 >