Поиск выбросов с помощью django

Итак, я пытался обнаружить некоторые ценовые выбросы в запросе, но не до конца понял. Как это можно сделать. Итак, как я пытаюсь это сделать: У меня есть одна модель

class History(models.Model):
    id = models.CharField(...)
    price = models.FloatField(...)
    retailer = models.CharField(...)

В представлении я получил запрос следующего вида

price_query = History.objects \
              .filter(id__in=product) \
              .filter(price_query) \
              .annotate(dt=Trunc('StartDate', frequency)) \
              .values('dt') \
              .annotate(F('Price')\
              .order_by('dt')

# so i can access price
outliers = np.array(price_query)
filtered_price = outliers[(outliers>np.quantile(price_query, 0.1)) & (outliers<np.quantile(price_query, 0.99))]   

но в этом случае можно связать любую filtered_price с любым id в History model, есть предложения как мне сделать правильно? Извините, долго не спал, ничего не приходит в голову

Вернуться на верх