Я пытаюсь извлечь определенные строки из массива в другой массив, если значение в массиве больше 4. Исходный массив взят из звездного каталога, похожего на это:
моя попытка решения:
for i in catalog:
if catalog[i][:,11]>=4: #
bad_ones.append(i)
print(bad_ones)
Где каталог - это файл, который был импортирован с использованием
catalog=np.loadtxt("catalog.cat", comments="#", unpack=False, ndmin=2)
Однако я получаю эту ошибку: IndexError: массивы используются какИндексы должны быть целочисленного (или логического) типа для строки с #, которую я пробовал без строк [i] после if, но я получаю ValueError: Значение истинности массива с более чем одним элементом неоднозначно. Используйте a.any () или a.all ()
. Я хочу перебрать строки и проверить, больше или равно 4 значение в 12-м столбце, а затем добавить эту строку в другой массив. Так, например, на изображении 1-й ряд 12-го столбца имеет значение 16, так что вся строка будет добавлена в новый массив с именем bad_ones.