Как добавить строку, содержащую значение в другой массив, используя NumPy - PullRequest
0 голосов
/ 04 ноября 2019

Я пытаюсь извлечь определенные строки из массива в другой массив, если значение в массиве больше 4. Исходный массив взят из звездного каталога, похожего на это: Catlog

моя попытка решения:

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.

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