【发布时间】:2021-08-13 08:48:30
【问题描述】:
我有 NumPy 结构化数组data:
data_tup = [tuple(ele) for ele in array]
data = np.array(
data_tup,
dtype = [("field_1", "<U30"), ("field_2", "<U30"),
("field_3", "<U30"), ("field_4", "<U30"),
("field_5", "<U30"), ("field_6", "<U30"),
("field_7", "<U30"), ("field_8", "<U30"),
("field_9", "<U30")])
我想将data 中所有字段的数据类型更改为float,但列表indices 指定的字段除外,该列表包含dtype 中字段的索引值,不应更改数据类型.
例如:
indices = [0, 4, 5, 7]
data = np.array(
data_tup,
dtype = [("field_1", "<U30"), ("field_2", "<U30"),
("field_3", "<U30"), ("field_4", "<U30"),
("field_5", "<U30"), ("field_6", "<U30"),
("field_7", "<U30"), ("field_8", "<U30"),
("field_9", "<U30")])
data 中的新 dtype 现在应该是:
dtype = [("field_1", "<U30"), ("field_2", float),
("field_3", float), ("field_4", float),
("field_5", "<U30"), ("field_6", "<U30"),
("field_7", float), ("field_8", "<U30"),
("field_9", float)])
【问题讨论】:
标签: python list numpy tuples structured-array