LINUX.ORG.RU

не получаеться добавить списки «Signle list » в список «Listy», ошибка в петле?

 


0

1

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’]]

Заранее спасибо!

решение: line 99: listy = [] lista = []

    for single_lp in max_list_from_all_plates:
        suma = 0
        lists = []

       
        for sign in single_lp:
   


            Highest_score=0
            biglist = []

            for b in range(0,len(sign)):

                n = sign[b]
                b = 0
                b += b

                if n[0]>Highest_score:#znaleenie maksimum dla kazdego elementu
                    Highest_score=n[0]

                    sum = 0
                    for i in n[2]:

                        if i == (len(n)-1):
                            sum = 0
                            #print(i)


                            for i in n:
                                print(i, n)
                                sum += float(Highest_score)


            suma += Highest_score
            lists.append([Highest_score, i])

        lista.append(suma)
        listy.append(lists)
        listy.index()
katemisik
() автор топика

Сушай, ты ведь уже не первый раз тут вопросы по коду задаешь. Неужели так сложно прочитать инструкцию по Markdown? Она же прям рядом с кнопкой «поместить», вот когда ты сообщение пишешь. Просто помести код в

``<третий апостроф>python
...
``<третий апостроф>

Уверен, что половина тех, кто мог бы ответить на твой вопрос просто забивают на тред когда видят эту нечитаемую мешанину

Aswed ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.