Как исправить ошибку 'IndexError: слишком много индексов для массива' в Python? при загрузке CSV-файла - PullRequest
0 голосов
/ 29 мая 2019

Я загрузил CSV-файл так:

import numpy as np

data_arr = np.loadtxt("asset.csv", delimiter = ",", dtype = 'S10,int64,int64,int64,int64')

data_arr

Вывод:

array([(b'G1', 1, 100,      5,     0), (b'G1', 1,  21,    538,     0),
   (b'G1', 1,  22,   6000,     0), ...,
   (b'G2', 8,  61, 241908,  8800), (b'G2', 8,  70,  57341, 16800),
   (b'G2', 9,  51,   1340,     0)],
  dtype=[('f0', 'S20'), ('f1', '<i8'), ('f2', '<i8'), ('f3', '<i8'), ('f4', '<i8')])

Далее я хочу попробовать

family_number = np.array([1,2,3,4,100])

for i, number in enumerate(family_number):

    family_numbers = data_arr[(data_arr[:,0]=="G1") & (data_arr[:,1]>i) & (data_arr[:,1]<=number)]

    print("\t" + (data_arr[:,3]-data_arr[:4]))

Но возникает ошибка:

IndexError: too many indices for array

Как я могу это исправить? Пожалуйста, помогите !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...