Distribuzione Zipf


Le distribuzioni Zipf vengono utilizzate per campionare i dati in base alla legge di zipf.

Legge di Zipf: In una raccolta l'ennesimo termine comune è 1/n volte il termine più comune. Ad esempio, la quinta parola comune in inglese è presente quasi 1/5 volte rispetto alla parola più usata.

Ha due parametri:

a - parametro di distribuzione.

size - La forma dell'array restituito.

Esempio

Disegna un campione per la distribuzione zipf con parametro di distribuzione 2 con dimensione 2x3:

from numpy import random

x = random.zipf(a=2, size=(2, 3))

print(x)

Visualizzazione della distribuzione Zipf

Campionare 1000 punti ma tracciare solo quelli con valore < 10 per un grafico più significativo.

Esempio

from numpy import random
import matplotlib.pyplot as plt
import seaborn as sns

x = random.zipf(a=2, size=1000)
sns.distplot(x[x<10], kde=False)

plt.show()

Risultato