для кода, написанного ниже, я хочу напечатать индекс значений в samples_avg
, которые возвращают true в maxlist
для каждого списка в samples_avg
.Таким образом, для списка
samples_avg = [[1, 12, 3], [15000, 4, 3], [1, 144, 45]]
я ожидал бы возвращаемое значение типа
filtered = [[], [0], [1, 2]]
, потому что нет индекса, для которого условие истинно в первом списке, оно истинно в индексе0 для второго списка и значение true для индексов 1 и 2 в последнем списке в пределах samples_avg
samples_avg = [[1, 12, 3], [15000, 4, 3], [1, 144, 45]]
def check(samples_avg):
filtered = []
maxval = [max(x) for x in zip(*samples_avg)]
maxlist = ([r >= (m/5) for row in samples_avg for r, m in zip(row, maxval)])
results =[[] for i in samples_avg]
for i in results:
filtered.append([x for x, y in zip(samples_avg[i], maxlist) if y == True])
print (np.where((filtered) is True))
В настоящее время возвращается три пустых массива.Как я могу это исправить, чтобы массивы содержали индексы?Любой совет будет принята с благодарностью!