Хорошо, вот и моя проблема. Мы планируем приобрести набор данных у компании, чтобы расширить существующий набор данных. Для целей этого вопроса предположим, что этот набор данных ранжирует места с органическим номером (это означает, что номер, присвоенный одному месту, не имеет отношения к номеру, назначенному другому). Технический диапазон составляет от 0 до бесконечности, но из наборов образцов, которые я видел, от 0 до 70. Судя по выборке, это определенно не равномерное распределение (из 10 000 может быть 5 мест с оценкой более 40, 50 с оценкой более 10 и 1000 с оценкой более 1). Прежде чем мы решим приобрести этот набор, мы хотели бы смоделировать его, чтобы увидеть, насколько он может быть полезен.
Итак, чтобы смоделировать это, я подумал о создании случайного числа для каждого места (около 150 000 случайных чисел). Но я также хочу придерживаться духа данных и сохранять относительно одинаковое распределение (или, по крайней мере, достаточно близкое). Я весь день ломал себе голову, пытаясь придумать, как это сделать, и ничего не вышло.
Одна мысль, которая у меня возникла, заключалась в том, чтобы возвести случайное число в квадрат (от 0 до sqrt (70)). Но это будет благоприятствовать как числам меньше 1, так и большим.
Я думаю, что его реальное распределение должно быть гиперболическим в первом квадранте ... Я просто не понимаю, как превратить линейное, равномерное распределение случайных чисел в гиперболическое распределение (если гиперболическое - это даже то, что я хочу в первом квадранте). место).
Есть предположения?
Итак, подведем итог, вот распределение, которое я хотел бы (приблизительно):
- 40 - 70: 0.02% - 0.05%
- 10 - 40: 0.5% - 1%
- 1 - 10: 10% - 20%
- 0 - 1: остаток (78,95% - 89,48%)