Выбор и создание новых списков значений в нескольких диапазонах из списка значений с плавающей запятой

Я создал список из 150 значений массы. Мне нужно выбрать из этого списка значения между 0,2-0,5, 0,5-1,2 и т. д., а затем найти медиану и диапазон для этих частей списка, но каждая функция, которую я пробую, требует целочисленных элементов и ограничений диапазона. Существуют ли эквиваленты для поплавков? Среди прочего я пробовал range() и np.where.


person as017678    schedule 25.02.2019    source источник
comment
Что конкретно вы пробовали? Прочтите о создании минимально воспроизводимого примера.   -  person G. Anderson    schedule 26.02.2019
comment
Например, вы говорите, что у вас уже есть сгенерированные значения. Итак, вы пытались реализовать np.random.choice()?   -  person G. Anderson    schedule 26.02.2019


Ответы (1)


Вы можете попробовать это:

from random import random 
from statistics import median
masses    = [ random()*10 for _ in range(150) ]
intervals = [ (0.2,0.5),(0.5,1.2) ]
for (low,high) in intervals:
   inRange = [ mass for mass in masses if mass >= low and mass < high ]
   print("(",low,",",high,") count=",len(inRange),"median=",median(inRange), "range=", min(inRange),"-",max(inRange))
person Alain T.    schedule 25.02.2019