Статистика с NumPy - PullRequest
       15

Статистика с NumPy

1 голос
/ 20 февраля 2009

Я работаю на некоторых графиках и статистики для работы, и я не уверен, как я могу сделать некоторые статистические данные, используя numpy: у меня есть список цен и еще один из basePrices. И я хочу знать, сколько цен с X процентами выше basePrice, сколько с Y процентами выше basePrice.

Есть ли простой способ сделать это, используя numpy?

Ответы [ 4 ]

8 голосов
/ 20 февраля 2009

Скажем, у вас есть

>>> prices = array([100, 200, 150, 145, 300])
>>> base_prices = array([90, 220, 100, 350, 350])

Тогда количество цен, которые более чем на 10% превышают базовую цену, составляет

>>> sum(prices > 1.10 * base_prices)
2
2 голосов
/ 20 февраля 2009

Только для развлечения, вот немного другой взгляд на ответ Д.Ф .:

>>> prices = array([100, 200, 150, 145, 300])
>>> base_prices = array([90, 220, 100, 350, 350])
>>> ratio = prices / base_prices

Затем вы можете извлечь число, которое на 5% выше, на 10% выше и т. Д. С помощью

>>> sum(ratio > 1.05)
2
>>> sum(ratio > 1.10)
2
>>> sum(ratio > 1.15)
1
1 голос
/ 20 февраля 2009

В дополнение к ответу df, если вы хотите узнать конкретные цены, которые выше базовых, вы можете сделать:

цены [цены> (1,10 * базовые цены)]

0 голосов
/ 20 февраля 2009

Я не думаю, что тебе нужен NumPy ...

prices = [40.0, 150.0, 35.0, 65.0, 90.0]
baseprices = [45.0, 130.0, 40.0, 80.0, 100.0]
x = .1
y = .5

# how many are within 10%
len([p for p,bp in zip(prices,baseprices) if p <= (1+x)*bp]) # 1

# how many are within 50%
len([p for p,bp in zip(prices,baseprices) if p <= (1+y)*bp]) # 5
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...