Как генерировать подобные Zipf образцы, при помощи языка сценариев

Вы устанавливали grub кому: /dev/sda1 или к /dev/sda? Это должно быть /dev/sda.

1
20.03.2012, 17:20
2 ответа

На основе основных уравнений, как насчет:

#!/usr/bin/python
import sys
k = float(sys.argv[1])
s = float(sys.argv[2])
N = int(sys.argv[3])
def zipf(k, s, N):
    return (1/k**s) / sum(1/n**s for n in range(1, N+1))
print zipf(k, s, N)

Использование только встроенные, основные стандартные программы на языке. Мог быть преобразован в примерно любой другой язык, например. perl, ruby. Вот версия в awk:

#!/bin/awk -f
BEGIN {
    for (n=1; n<=N; n++) {
        den=den+1/n^s;
    }
    print (1/(k^s))/den;
}

awk сценарий не требует никакого входного файла, но действительно требует переменных присвоений на командной строке:

$ /tmp/zipf.awk -vk=10 -vs=4 -vN=10
9.24183e-05
2
27.01.2020, 23:39

Не был бы Python expovariate распределение, с правильным значением лямбды, работы?

0
27.01.2020, 23:39

Теги

Похожие вопросы