gpt4 book ai didi

python - 在使用 numpy.genfromtxt 创建的 ndarray 中插入列

转载 作者:太空宇宙 更新时间:2023-11-03 15:55:00 25 4
gpt4 key购买 nike

我使用 numpy.genfromtxt 从 txt 文件创建了一个 ndarray 。 txt 文件如下所示:

2505000
10.316 1.936 0.025 0 15 0 0
10.316 1.937 0.028 0 15 0 0
10.316 1.943 0.028 0 15 0 0
10.316 1.954 0.022 0 9 58 0
10.316 1.955 0.026 0 9 58 0

我正在运行读取数据:

data = np.genfromtxt(fname,
skip_header =1,
dtype = [('X','f'),('Y','f'),('Z','f'),('V', 'i'),('T', 'i')],
usecols = (0,1,2,4,5))

我现在尝试复制第四列(我称为 V 的那一列)并将其放在其自身之后(最后一个 T 列之前)。

我知道我可以通过执行 data['V'] 来复制该列,但如何将此副本放在 VT 之间code>(第 4 和第 5 列)?我看了一下numpy.insert ,但我不确定如何指定索引( obj 参数)。我尝试使用 numpy.insert(data_copy, data_copy['T'],data_copy['V']) 但没有运气(我收到 IndexError: index 61 is out ofbounds for size 20 )。

最佳答案

您必须使用添加的字段创建一个新的dtype,并按字段名称将值从原始数组复制到新数组。

recfunctions 具有执行此操作的函数(以及相关操作):

 from numpy.lib import recfunctions

numpy dtype error - (structured array creation)

关于python - 在使用 numpy.genfromtxt 创建的 ndarray 中插入列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40892339/

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