gpt4 book ai didi

python - Numpy - 将列数据类型 (dtype) 分配给现有数组

转载 作者:行者123 更新时间:2023-11-28 20:22:10 26 4
gpt4 key购买 nike

我有一个给定的数组:

array = [(u'Andrew', -3, 3, 100.032) (u'Bob', -4, 4, 103.323) (u'Joe', -5, 5, 154.324)]

这是从另一个获取 CSV 表的过程(我无法控制)生成的,它输出这个 numpy 数组。我现在需要分配列的 dtype 以进行进一步分析。

我该怎么做?

谢谢

最佳答案

这是您需要的吗?

new_array = np.array(array, dtype = [("name", object), 
("N1", int),
("N2", int),
("N3", float)])

其中 name 和 N1-3 是我给的列名。

它给出:

array([(u'Andrew', -3, 3, 100.032), (u'Bob', -4, 4, 103.323),
(u'Joe', -5, 5, 154.324)],
dtype=[('name', 'O'), ('N1', '<i8'), ('N2', '<i8'), ('N3', '<f8')])

例如,您可以对“N1”进行排序:

new_array.sort(order="N1")
new_array
array([(u'Joe', -5, 5, 154.324), (u'Bob', -4, 4, 103.323),
(u'Andrew', -3, 3, 100.032)],
dtype=[('name', 'O'), ('N1', '<i8'), ('N2', '<i8'), ('N3', '<f8')])

希望这对您有所帮助。

关于python - Numpy - 将列数据类型 (dtype) 分配给现有数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24864913/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com