import numpy as np from pprint import pprint import collections from itertools import chain import pandas as pd from itertools import islice import time from itertools import zip_longest
CATEGORIES = [«0»,«1»,«2»,«3»,«4»,«5»,«6»,«7»,«8»,«9»,«A»,«B»,«C»,«D»,«E»,«F»,«G»,«H»,«I»,«J»,«K»,«L»,«M»,«N»,«O»,«P»,«R»,«S»,«T»,«U»,«V»,«W»,«X»,«Y»,«Z»] KR8877J = [[0.002,0.006,0.004,0.045,0.002,0.017,0.006,0.077,0.001,0.035,0.042,0.005,0.004,0.039,0.001,0.002,0.001,0.008,0.058,0.352,0.002,0.007,0.017,0.004,0.007,0.007,0.007,0.004,0.005,0.009,0.089,0.036,0.053,0.041,0.004]etc
seq = (KR8877J, KR8877J_1, KR8877J_2, KR8877J_3, KR8877J_4, KR8877J_5, KR8877J_6) seq2 = (KR8R544_1, KR8R544_2, KR8R544_3, KR8R544_4, KR8R544_5) seq3 = (KR508WW_1, KR508WW_2, KR508WW_3, KR508WW_4, KR508WW_5, KR508WW_6, KR508WW_7, KR508WW_8)
if name == «main»:
max_index = 0
max_list_from_all_plates = []
threshold = 0.05
for single_lp in seq:
maximum_plate_prob = []
possible_plate_prob = []
max_list = []
for sign in single_lp:
high_indexes = []
for prob_id in range(0,len(sign)):
if threshold<sign[prob_id]:
high_indexes.append([sign[prob_id], prob_id, CATEGORIES[prob_id]])
max_list.append(high_indexes)
max_list_from_all_plates.append(max_list)
lista = []
for single_lp in max_list_from_all_plates:
suma = 0#bylo ok tylko dla maximum
listy = []
lists = []
for sign in single_lp:
#suma = 0
#print(sign)
Highest_score=0
biglist = []
for b in range(0,len(sign)):
n = sign[b]
b = 0
b += b
if n[0]>Highest_score:
Highest_score=n[0]
sum = 0
for i in n[2]:
if i == (len(n)-1):
sum = 0
for i in n:
sum += float(Highest_score)
listy.extend(lists)
suma += Highest_score
lists.append([Highest_score, i])
listy.append(lists)
lista.append(suma)
print("SINGLE LISTS", lists)
print("SUMA", suma)
print("Test", lists)
print("Lista sum", lista)
print("Test", listy)
ma = max(lista)
print("mak", ma)
mi = min(lista)
def mergeSort(lista): if len(lista) > 1: mid = len(lista) // 2 left = lista[:mid] right = lista[mid:]
mergeSort(left)
mergeSort(right)
i = 0
j = 0
k = 0
while i < len(left) and j < len(right):
if left[i] < right[j]:
lista[k] = left[i]
i += 1
else:
lista[k] = right[j]
j += 1
k += 1
while i < len(left):
lista[k] = left[i]
i += 1
k += 1
while j < len(right):
lista[k]=right[j]
j += 1
k += 1
mergeSort(lista) print(«list», lista)
вместо вывода [[0.389, ‘J’], [0.348, ‘J’], [0.499, ‘7’], [0.369, ‘8’], [0.365, ‘8’], [0.289, ‘R’], [0.342, ‘K’]] [[0.384, ‘J’], [0.387, ‘J’], [0.282, ‘7’], [0.239, ‘8’], [0.25, ‘8’], [0.256, ‘R’], [0.357, ‘K’]] [[0.391, ‘J’], [0.379, ‘J’], [0.458, ‘7’], [0.235, ‘8’], [0.289, ‘8’], [0.275, ‘R’], [0.378, ‘K’]]
[[0.401, ‘J’], [0.462, ‘7’], [0.422, ‘J’], [0.287, ‘8’], [0.271, ‘8’], [0.286, ‘R’], [0.377, ‘K’]]
[[0.382, ‘J’], [0.35, ‘J’], [0.517, ‘7’], [0.36, ‘8’], [0.259, ‘8’], [0.331, ‘R’], [0.36, ‘K’]]
[[0.391, ‘J’], [0.366, ‘J’], [0.299, ‘7’], [0.234, ‘8’], [0.269, ‘8’], [0.239, ‘R’], [0.3, ‘K’]]
у меня отдельные списки нп: Test [[0.352, ‘J’], [0.36, ‘J’], [0.627, ‘7’], [0.412, ‘8’], [0.258, ‘8’], [0.317, ‘R’], [0.383, ‘K’]] Test [[0.389, ‘J’], [0.348, ‘J’], [0.499, ‘7’], [0.369, ‘8’], [0.365, ‘8’], [0.289, ‘R’], [0.342, ‘K’]]
Test [[0.384, ‘J’], [0.387, ‘J’], [0.282, ‘7’], [0.239, ‘8’], [0.25, ‘8’], [0.256, ‘R’], [0.357, ‘K’]]
Test [[0.391, ‘J’], [0.379, ‘J’], [0.458, ‘7’], [0.235, ‘8’], [0.289, ‘8’], [0.275, ‘R’], [0.378, ‘K’]]
Test [[0.401, ‘J’], [0.462, ‘7’], [0.422, ‘J’], [0.287, ‘8’], [0.271, ‘8’], [0.286, ‘R’], [0.377, ‘K’]]
Test [[0.382, ‘J’], [0.35, ‘J’], [0.517, ‘7’], [0.36, ‘8’], [0.259, ‘8’], [0.331, ‘R’], [0.36, ‘K’]]
Test [[0.391, ‘J’], [0.366, ‘J’], [0.299, ‘7’], [0.234, ‘8’], [0.269, ‘8’], [0.239, ‘R’], [0.3, ‘K’]]
Заранее спасибо!