np.percentile β€” это функция NumPy для вычислСния ΠΊΠ²Π°Π½Ρ‚ΠΈΠ»ΠΈ Π² ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°Ρ…, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ значСния, Π½ΠΈΠΆΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ находится заданная доля Π΄Π°Π½Π½Ρ‹Ρ…. Она особСнно ΡƒΠ΄ΠΎΠ±Π½Π° для Π°Π½Π°Π»ΠΈΠ·Π° ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½Ρ‹Ρ… экспСримСнтов ΠΈ ΡΠΊΡΡ‚Ρ€Π΅ΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… статистик.

Бинтаксис:

np.percentile(a, q, axis=None)
  • a β€” массив Π΄Π°Π½Π½Ρ‹Ρ…
  • q β€” ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΈΠ»ΡŒ (число ΠΎΡ‚ 0 Π΄ΠΎ 100)
  • axis β€” ось, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠΎ всСму массиву)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

import numpy as np
 
data = np.array([1, 2, 3, 4, 5])
 
median = np.percentile(data, 50)    # ΠΌΠ΅Π΄ΠΈΠ°Π½Π°
q25 = np.percentile(data, 25)       # ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊΠ²Π°Ρ€Ρ‚ΠΈΠ»ΡŒ
q75 = np.percentile(data, 75)       # Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ ΠΊΠ²Π°Ρ€Ρ‚ΠΈΠ»ΡŒ

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ:

  • np.percentile устойчива ΠΊ выбросам, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ срСднСго
  • МоТно Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ ΡΠΊΡΡ‚Ρ€Π΅ΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΈΠ»ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 95-ΠΉ ΠΈΠ»ΠΈ 99-ΠΉ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΈΠ»ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ максимум Π±Π΅Π· влияния Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½Ρ‹Ρ… выбросов
  • Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ массивами ΠΏΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ axis, Ρ‡Ρ‚ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ для ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½Ρ‹Ρ… экспСримСнтов

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ для ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½Ρ‹Ρ… экспСримСнтов с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π΅ΠΉ Π’ΠΈΠ³Π½Π΅Ρ€Π°:

import numpy as np
 
n = 100
experiments = 1000
X_all = np.random.normal(0, 1, size=(experiments, n, n))
W_all = (X_all + X_all.transpose(0,2,1)) / np.sqrt(2*n)
maxima = W_all.max(axis=(1,2))
 
p95 = np.percentile(maxima, 95)  # 95-ΠΉ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΈΠ»ΡŒ максимума

Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΡ:

  • p95 ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ 95% ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ мСньшС этого числа
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΎΡ†Π΅Π½ΠΊΠΈ ΡΠΊΡΡ‚Ρ€Π΅ΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… случаСв Π±Π΅Π· влияния Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π΅Π΄ΠΊΠΈΡ… ΠΏΠΈΠΊΠΎΠ²

ΠšΠΎΡ€ΠΎΡ‚ΠΊΠΎ:
np.percentile вычисляСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π½ΠΈΠΆΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ находится заданная доля Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈ слуТит устойчивой ΠΌΠ΅Ρ€ΠΎΠΉ полоТСния ΠΈΠ»ΠΈ ΡΠΊΡΡ‚Ρ€Π΅ΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² массивС.