question

como encontrar a mediana de uma lista nao-ordenada em python?

Isso está realmente me confundindo agora, aqui está meu código:

Import random

List =]
para mim em range(0,10):
theList.append(random.randint(1,25))


Print(theList)

# como descobrir a mediana
resposta Resposta
List = sorted(theList) se len(theList) % 2 = = 0: # se o comprimento da lista é mesmo não há nenhuma tomada de # de um valor médio a média dos dois valores médios x = len(theList) / 2, b = list [x - 1], significa list [x] = (um + b) / 2 coisa: # tomar apenas meio valor médio = len(theList) / / divisão de número inteiro # 2 no Python3 arredonda para baixo significa = list [meio] a parte complicada é o entendimento que a len() e o último índice não são os mesmos em uma lista.

por exemplo: L = [0, 1, 2] aqui, os valores correspondem diretamente para os índices. Mas o tamanho é 3.

3 / / 2> 1 (arredondado para baixo, com divisão de número inteiro), assim que obtém a média, perfeitamente.

L = [0, 1, 2, 3] aqui é o mesmo, mas o comprimento é de 4, e queremos obter os dois valores intermediários (L [a] e L[b]), olhando para ele você pode ver será L [1] e L [2].

4 / 2> 2 (para isso é b) 2-1> 1 (para isso é um) Resumo:-para uma dimensão ímpar de listas, é meio (comprimento / 2) arredondado para baixo. -Para listas de mesmo tamanho, um sempre será o (comprimento / 2)-1 e b será sempre apenas o (comprimento / 2).

-Editar - é claro que você não tem que memorizar esse Resumo. Enquanto fazia sentido, da próxima vez você saberá como derivá-lo com um minuto de pensar e visualizar os valores e índices em sua cabeça, ou em papel, talvez.

ComentáriosComentários

Topo da página


Home  Terms
Copyright © Accelerated Ideas 2005-2024
All rights reserved