Мне было интересно, можно ли сгенерировать случайное распределение, которое является функцией определенного параметра. Другими словами, используя MATLAB I типа rand(1,5)
, я имею равномерно случайное распределение 5 чисел между 0 и 1. Можно ли получить этот результат как функцию определенного параметра? Вы знаете какой-нибудь алгоритм по этому поводу? Мне просто нужно, чтобы в интервале не нужно было 2D-представление.
Генерация параметрических случайных чисел с помощью MATLAB
Ответы (1)
Я думаю, вы хотите сделать это:
http://en.wikipedia.org/wiki/Inverse_transform_sampling< /а>
В MATLAB это довольно просто, вы просто указываете функцию.
n = 10000; % number of random draws
r = rand(n, 1); % generate uniform random numbers
f = @norminv; % specify transforming function
tr = f(r); % transformed numbers, now normally distributed
hist(tr, 30) % plot histogram
Этот пример немного надуманный, так как мы могли просто использовать randn
. Но в целом этот метод работает.
Если у вас есть набор инструментов статистики и вы хотите сделать выборку из одного из популярных дистрибутивов, взгляните на доступные вам генераторы случайных чисел, ссылка.
person
Prashant Kumar
schedule
07.06.2013
Я вижу
n
, но где мой параметр? Я ищу случайную генерацию с f(a,N)
.
- person Nicholas; 07.06.2013
Количество параметров не имеет большого значения. После преобразования чисел это все, что вам нужно. Например, рассмотрим
f = @(x) norminv(x,10,5)
, которое преобразуется в нормальное распределение с центром в 10 и сигмой 5.
- person Prashant Kumar; 07.06.2013
это интересно, я мог бы использовать
sigma
в качестве параметра. Всегда ли функция rand дает мне числа в [0,1]
?
- person Nicholas; 07.06.2013
@Nicholas попробуйте использовать справку через:
help rand
для таких вопросов.
- person Dennis Jaheruddin; 07.06.2013
[0,1]
. Таким образом,f(a,N)
при заданном значенииa
дает определенное распределение случайных чисел:f(1,3) -> 0.256 0.434 0.876
. Вместо этого, например:f(1.5,3) -> 0.342 0.573 0.972
. Я ищу что-то подобное, если оно существует - person Nicholas   schedule 07.06.2013