-1
votes

Comment choisir les numéros les plus bas 10% de la liste?

Je voudrais obtenir les 10% les plus bas de 10% dans la liste.

List = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]


2 commentaires

Trier et obtenir Arr [: Len (ARR) // 10]?


Les éléments sont-ils uniques? Et si l'entrée est [1] * 10


6 Réponses :


2
votes

résultat = Liste [: int (Len (List) * 0.1)]


0 commentaires

2
votes

Si tous les éléments sont uniques, vous pouvez simplement trier et couper les données xxx pré>

Cependant, dans la plupart des cas, cela est faux, vous pouvez utiliser la version numpy p>

import numpy as np

l = np.array([1]*20)
threshold = np.percentile(l, 10)
print(l[l < np.percentile(l, 10)]) # Gives you empty list
print(l[l <= np.percentile(l, 10)]) # Gives you full list


0 commentaires

2
votes

Essayez ceci - xxx

lis est votre liste.


0 commentaires

1
votes
 # list of values
lstValues = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]

# get maximum value out of list values
max = max(lstValues)

# calculate 10 percent out of max value
max /= 10

# print all the elements which are under the 10% mark
print([i for i in lstValues if i <= max])

9 commentaires

Vous devriez faire attention lorsque vous surchargez les méthodes intégrées


Qu'entendez-vous avec la surcharge des méthodes?


Après cela, vous ne pouvez pas utiliser max (1, 2) plus. Mon libellé pourrait être faux


Oh je ne savais pas ça. Merci beaucoup!


Mon plaisir ! :)


Cette solution ne fonctionnera que si tous les éléments de la liste ne sont pas aléatoires ou ne suivent pas un motif compatible. LSTValues ​​= [1, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9] ne fonctionnera pas du tout pour un exemple.


@MatthieurAnnaudDefitte Cela dépend de la nécessité, la question n'était pas très claire, peut-être que OP souhaitait "prendre les éléments


@Bluesheepoken est vrai, la question a besoin d'un peu de clarification


@Matthieuraraynauddefitte mon mauvais, je n'ai pas pensé à différents modèles possibles.



2
votes

Si vous souhaitez utiliser NUMPY, il existe une fonction de centile intégrée: xxx


0 commentaires

2
votes

Ici vous allez = ^ .. ^ = xxx

sortie: xxx


1 commentaires

Oh, ce que j'attends, c'est [1,2]. L'élément réel, pas l'index.