Создание массивов со случайными элементами

» randperm(6) 

ans =

243651

Функция rand генерирует массивы случайных чисел, значения элементов которых равномерно распределены в промежутке (0, 1):

Пример: 

» Y=rand(4,3)

Y=

0.9501     0.8913     0.8214

0.2311     0.7621     0.4447

0.6068     0.4565     0.6154

0.4860     0.0185     0.7919

Проверить равномерность распределения случайных чисел можно, построив большое число точек на плоскости со случайными координатами. Это делается с помощью следующих команд:

» X=rand(1000,1);

 » Y=rand(1000,1);

 » plot(X,Y,'.')

Полученный при этом график показан на рис. 10.1. Нетрудно заметить, что точки довольно равномерно распределены на плоскости, так что нет оснований не доверять заданному закону распределения координат точек.

Рис. 10.1. Случайные точки с равномерным распределением координат на плоскости

Функция randn генерирует массив со случайными элементами, распределенными по нормальному закону с нулевым математическим ожиданием и среднеквадратическим отклонением, равным 1:

Пример:

>>Y=randn(4.3)

Y =

-0.4326    -1.1465     0.3273

-1.6656     1.1909     0.1746 

0.1253     1.1892     -0.1867 

0.2877     -0.0376     0.7258

Проверить распределение случайных чисел по нормальному закону можно, построив гистограмму распределения большого количества чисел. Например, следующие команды

» Y=randn(10000,1); 

» hist(Y,100)

строят гистограмму (рис. 10.2) из 100 столбцов для 10 000 случайных чисел с нормальным распределением.

Рис. 10.2. Гистограмма для 10 000 нормально распределенных чисел в 100 интервалах

Из рисунка видно, что огибающая гистограммы действительно близка к нормальному закону распределения.

В пакете расширения Statistics Toolbox можно найти множество статистических функций, в том числе для генерации случайных чисел с различными законами распределения и определения их статистических характеристик.