II Всероссийская конференция пользователей MATLAB, 25-26 мая 2004 года >>
На первую страницу
Рубрика Matlab&Toolboxes
Российские MATLAB-разработки
Вход
Раздел "Математика\Statistics Toolbox"

Список функций Statistics Toolbox

В оглавление \ К следующему разделу \ К предыдущему разделу

BOOTSTRP
Расчет бутстреп-оценок выборки

Синтаксис

bootstat = bootstrp(nboot,'bootfun',d1,d2,...)
[bootstat,bootsam] = bootstrp(...)

Описание

bootstat = bootstrp(nboot,'bootfun',d1,d2,...) увеличивает в nboot раз размер выборки из исходного набора данных, d1, d2,…, с последующей передачей выборки для анализа в функцию 'bootfun'. Входной аргумент nboot должен быть положительным целым числом. Входные данные должны иметь одинаковое число строк n. Каждая сформированная бутстреп выборка содержит n строк выбранных случайным образом (с замещением) из переданного множества входных данных d1, d2,…

Каждая строка выходной переменной, bootstat, содержит результаты расчета функцией 'bootfun' статистик бутстреп выборок. Если функция 'bootfun' возвращает несколько выходных переменных, bootstat содержит только первую из них. Если первая возвращаемая функцией 'bootfun' переменная является матрицей, то она преобразуется в вектор-столбец. Полученный вектор присваивается выходной переменной bootstat.

[bootstat,bootsam] = bootstrap(...) функция возвращает значения статистик bootstat и матрицу бутстреп индексов bootsam. Каждый из nboot столбцов в матрице bootsam содержит номера значений, которые были извлечены из входного набора данных для составления соответствующей бутстреп выборки. Например, если d1, d2,… содержат по 16 значений и nboot=4, тогда размерность матрицы bootsam будет равна 16x4. первый столбец содержит номера 16 значений извлеченных из d1, d2,… и т.д. для первой из 4 бутстреп выборок, второй столбец содержит индексы для второй бутстреп выборки и т.д. (Бутстреп индексы являются теми же самыми для всех входных наборов данных)

Примеры использования функции расчета бутстреп-оценок выборки

Расчет среднего арифметического значения элементов вектора на 20 элементов. Генерируется 10 бутстреп выборок.

>> X = normrnd(0,1,20,1);
>> [bootstat,bootsam] = bootstrp(10,'mean', X)
bootstat =
   -0.0368
   -0.1050
    0.0818
   -0.1837
    0.0828
   -0.2198
    0.1510
    0.1348
   -0.0164
    0.3476
bootsam =
     4     5     3     9    13     7    19     9    19    18
     7    10     7     9    17     6    16     8    20    15
    14    12     9    12     9    12    18    15    10     7
    16    16    11    20    19     4    15    12    17    15
    12     8    11     8    19     8    14     6    14    14
    18     5     5     8    11    15    14    18     7    15
    11    13     9    12     7    20    11    12    13     9
    20     1     9     7    11    14     9     1     2     5
     3     4    14     7     8     4     4    13     8     1
     3    11    13    20    14    16    12    15     7    17
    18    16    14    13    14     5    17     2    12    18
     5     2     2     8    13    11     3     4    18     1
    13     7    16     4     3    14     2    10    18     9
     1    14    16     2    17    15     9    12     3     3
    19     5     7    16    15     7     2     9     9     5
     5    18     9     1     8    20    15     9    14    10
    20     5    15    12    17    17    16    18    19     9
    18    15    10    15     3    19    15     4     9     1
     8     6     7    11    18    17     3     8    10    16
    11    10     3     7     9    11    16    20    15    10
        
Графическое представление полученных результатов

>> X = normrnd(0,1,20,1);
>> [bootstat,bootsam] = bootstrp(100,'mean', X);
>> hist(bootstat)
>> grid on

Сравнение результатов расчета среднего арифметического по исходной выборке и средних арифметических значений полученных методом бутстреп оценок

>> X = normrnd(0,1,20,1);
>> m = mean(X)
m =
   -0.0826
>> [bootstat,bootsam] = bootstrp(5,'mean', X)
bootstat =
    0.0199
   -0.7018
   -0.1665
   -0.2772
   -0.3740
bootsam =
    16    15    20     1     2
    15    13    18    10    12
    20     4    16    11     1
    20    18    10    18     1
     4    19     3    16     5
    12    20    13     9     5
     4    19     9    20     4
    14     3     6    13     5
     9    18    17     3    13
     2     2    19     7    15
    12     9     1     7     3
     9    15    14     3     2
    13     1    12     6    12
    10    11     1    18     5
     5    10    12    11     2
    11     4     8     5    17
     7    18     2     9    15
    16    18     5     6    14
     1    11    15     1     4
    17     4     9     1    11

Графическое представление результатов расчета среднего арифметического по исходной выборке и средних арифметических значений полученных методом бутстреп оценок

>> X = normrnd(0,1,20,1);
>> m = mean(X)
m =
   -0.0110
>> [bootstat,bootsam] = bootstrp(100,'mean', X);
>> hist(bootstat)
>> grid on
>> H=line ([m m], [0 25]);

Расчет бутстреп оценки коэффициента эксцесса выборки для матрицы с размерностью 5x5. Генерируется 10 бутстреп выборок.

>> X = normrnd(0,1,5,5);
X =
   -1.0082    0.2710   -0.3135   -0.3609    0.4938
   -0.6646    1.5350   -0.6022    0.5536   -0.8709
    0.5582   -1.0523    1.2591   -1.5564    0.0798
   -1.1885    0.6256    0.8585   -0.2067   -0.5216
   -0.7755   -0.7976   -2.1053   -0.4256   -1.4139
>> [bootstat,bootsam] = bootstrp(10,'kurtosis', X)
bootstat =
    1.1667    1.1667    1.1667    1.1667    1.1667
    2.6310    2.4268    1.2410    2.3911    2.3623
    3.1957    3.0127    2.9198    3.1830    1.7715
    1.2219    1.4334    2.9249    1.4517    1.4670
    2.8096    2.6053    1.3214    2.5753    2.5508
    2.7328    1.5063    2.0226    2.5297    2.1854
    2.7544    2.2273    1.2500    3.2284    2.8191
    1.2057    1.1850    3.1529    1.1873    2.2188
    1.1667    1.1667    1.1667    1.1667    1.1667
    1.6549    1.9115    2.4535    1.2021    2.4930
bootsam =
     5     2     4     4     2     2     5     4     1     2
     1     4     4     4     3     5     2     3     1     4
     1     2     1     3     2     3     1     5     4     1
     5     3     4     3     2     4     5     3     4     5
     1     4     3     2     4     4     5     4     1     2
>> k = kurtosis(X)
k =
    2.8487    1.6520    1.9318    2.5053    1.6952

Расчет коэффициента корреляции методом бутстреп оценок для двух векторов с размерностью 20x1. Генерируется 10 бутстреп выборок. Полученные выборки передаются функции расчета коэффициента корреляции corrcoef. В результате расчета коэффициента корреляции формируется матрица значений bootstat с размерностью 10x4. Т.е., полученная матрица коэффициентов корреляции с размерностью 2x2 преобразуется в вектор с размерностью 1x4. Расчет повторяется для 10 выборок.

>> X1 = normrnd(0,1,20,1);
>> X2 = normrnd(0,1,20,1);
>> [bootstat,bootsam] = bootstrp(10,'corrcoef', X1, X2)

bootstat =
    1.0000    0.4900    0.4900    1.0000
    1.0000    0.5219    0.5219    1.0000
    1.0000    0.3715    0.3715    1.0000
    1.0000    0.6003    0.6003    1.0000
    1.0000    0.2251    0.2251    1.0000
    1.0000    0.3585    0.3585    1.0000
    1.0000    0.5380    0.5380    1.0000
    1.0000    0.5195    0.5195    1.0000
    1.0000    0.4179    0.4179    1.0000
    1.0000    0.6214    0.6214    1.0000
bootsam =
    15     1     1     1     8    10    12     4    19    10
    10    18    10    11     5    13    10    10    20    10
     5    15    10     6    15    14    12    18     5     7
    15    15    17    20    18     6     6     6    17    19
     4    14    11     7     9    14    13    10     5     3
     8    10    17    15     7    12    10     7     8     1
     1    14     9    11    13    17     4     9     2    16
     3     3    16     3    16    19     4    14     5    12
     3    18    14    12    18    19     3    11    18    15
    20    17    18     8     9     8     8    17    16    11
    16     2     2     2    16    17     2    17    15    15
    15     5    15     5     3    10     2    16    14     5
    20    14    13     5    14    14    19    18     9     2
    19    14    12    16     6    13    17     7     5     5
     5    16     4    20    13    15     9     8     8     4
    12    15     3    19    11     6     9    10    11    17
     4     2     9    14     1    17     4     5     9     8
    16     6    11    14    10     3    18     8    20     8
    20    18     3     9    11     8    11     4     9     3
     8     8     1     6    18    11     7     9     7     6
         
Графическое представление полученных результатов

>> X1 = normrnd(0,1,20,1);
>> X2 = normrnd(0,1,20,1);
>> [bootstat,bootsam] = bootstrp(100,'corrcoef', X1, X2);
>> hist(bootstat(:,2))
>> grid on

В оглавление \ К следующему разделу \ К предыдущему разделу


О получении локальных копий сайтов
  Всероссийская научная конференция "Проектирование научных и инженерных приложений в среде MATLAB" (май 2002 г.)
На первую страницу \ Сотрудничество \ MathWorks \ SoftLine \ Exponenta.ru \ Exponenta Pro   
E-mail:    
  Информация на сайте была обновлена 11.05.2004 Copyright 2001-2004 SoftLine Co 
Наши баннеры