как можно положить результат np.loadtxt в массив - PullRequest
1 голос
/ 13 апреля 2020

Я хочу поместить np.loadtxt в новый массив, но у меня слишком много ошибок индексов

data = np.loadtxt('lab_iris_data.csv', dtype={'names': ('sepal length', 'sepal width', 'petal length', 'label'),'formats': (np.float, np.float, np.float, '|S15')}, delimiter=',', skiprows=0)

x = data[:,0:2]
y = data[:,-1]
print (data)

----> 9 x = data [:, 0: 2] 10 #y = data [:, - 1] 11 print (data) IndexError: слишком много индексов для массива

1 Ответ

0 голосов
/ 13 апреля 2020

По моему мнению, вы объявили содержимое для вашего массива, которое ему не подходит. Если мы предполагаем, что он одномерный, и программа возражает против того, чтобы рассматривать его как двумерный. Итак, проверьте свои декларации на предмет правильности или нет, а также протестируйте код, напечатав значения после того, как вы установили для них двойную проверку, и именно они соответствуют вашим ожиданиям.

IndexError: too many indices for array происходит потому, что если слишком много значений индекса

Например: вы дали два значения, поскольку ожидаете, что данные будут двухмерным массивом. Это жалуется, потому что данные не 2D. Это либо одномерный, либо пустой массив, вы можете получить возвращенный массив, который является 1D или даже пустым

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