gpt4 book ai didi

python - 在PYTHON中将两个不同数据类型的一维数组组合成1个二维数组

转载 作者:行者123 更新时间:2023-11-30 23:07:08 26 4
gpt4 key购买 nike

我有 2 个数字列表:a 和 b。 A 是整数类型的节点编号列表,b 是 float64 类型的 X 坐标列表。我想将这 2 个等长数组 (N) 组合成一个保留数据类型的 Nx2 数组。我稍后在一些 bool 测试中使用这个数组,所以我需要第一列是整数。我一直在使用:

nodeID = np.concatenate([[a],[b]]).T

但显然这会将所有内容转换为 float 。

谢谢!

最佳答案

实现目标的一种方法是使用 numpydtype,如 http://docs.scipy.org/doc/numpy/reference/arrays.dtypes.html 中所述。

>>> import numpy as np
>>> dt = np.dtype([('a', np.int64, 1), ('b', np.float64, 1)])
>>> a = np.array([1,2,3,4], dtype=np.int64)
>>> b = np.array([1.,2.,3.,4.], dtype=np.float64)
>>> ab = np.array(zip(a,b), dtype=dt)
>>> ab[:]['a']
array([1, 2, 3, 4])
>>> ab[:]['b']
array([ 1., 2., 3., 4.])

关于python - 在PYTHON中将两个不同数据类型的一维数组组合成1个二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32355937/

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