Преобразование логического массива (т.е. True False) в фактические значения? - PullRequest
0 голосов
/ 22 апреля 2020

Я пытаюсь преобразовать все истинные значения в массиве 'v' в их действительные числа. Любые предложения будут высоко оценены.

import numpy as np
from numpy import load

dict_data = load('E_starData.npz')
EStar = dict_data['arr_0']
v = np.greater(EStar, 0.1)
print(v) #prints an array of true and false values, would like to display true values as the actual number

Код извлекает сохраненный ZIP-файл со всеми данными.

Ответы [ 2 ]

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

Вы можете использовать:

v = EStar * (EStar>0.1)
0 голосов
/ 22 апреля 2020

Возможно, есть более эффективные способы решения проблемы с самого начала, но на основе вашего кода:

print([val for bool, val in zip(v, Estar) if bool])
...