Подбор объекта ядерного распределения к данным

Этот пример показывает аппроксимацию объекта распределения вероятностей ядра к выборочным данным.

Шаг 1. Загрузите выборочные данные.

Загрузите выборочные данные.

load carsmall;

Эти данные содержат мили на галлон (MPG) измерения для различных марок и моделей автомобилей, сгруппированные по странам источника (Origin), модельного года (Year), и другие характеристики транспортного средства.

Шаг 2. Подбор объекта ядерного распределения.

Использование fitdist для подгонки объекта распределения вероятностей ядра к милям на галлон (MPG) данные по всем маркам автомобилей.

pd = fitdist(MPG,'Kernel')
pd = 
  KernelDistribution

    Kernel = normal
    Bandwidth = 4.11428
    Support = unbounded

Это создает prob.KernelDistribution объект. По умолчанию fitdist использует функцию нормального сглаживания ядра и выбирает оптимальную полосу для оценки нормальных плотностей, если вы не задаете обратное. Вы можете получить доступ к информации о подгонке и выполнить дальнейшие вычисления с помощью связанных функций объекта.

Шаг 3. Вычислите описательную статистику.

Вычислите среднее, среднее и стандартное отклонение установленного ядерного распределения.

m = mean(pd)
m = 23.7181
med = median(pd)
med = 23.4841
s = std(pd)
s = 8.9896

Шаг 4. Вычислите и постройте график PDF.

Вычислите и постройте график PDF установленного ядерного распределения.

figure
x = 0:1:60;
y = pdf(pd,x);
plot(x,y,'LineWidth',2)
title('Miles per Gallon')
xlabel('MPG')

Figure contains an axes. The axes with title Miles per Gallon contains an object of type line.

График показывает PDF ядерного распределения, подгоняемого к MPG данные по всем маркам автомобилей. Распределение гладкое и довольно симметричное, хотя и слегка перекосано более тяжёлым правым хвостом.

Шаг 5. Сгенерируйте случайные числа.

Сгенерируйте вектор случайных чисел из установленного ядерного распределения.

rng('default')  % For reproducibility
r = random(pd,1000,1);
figure
hist(r);
set(get(gca,'Children'),'FaceColor',[.8 .8 1]);
hold on
y = y*5000;  % Scale pdf to overlay on histogram
plot(x,y,'LineWidth',2)
title('Random Numbers Generated From Distribution')
hold off

Figure contains an axes. The axes with title Random Numbers Generated From Distribution contains 2 objects of type patch, line. This object represents r.

Гистограмма имеет сходную форму с PDF графика потому что случайные числа генерируются из непараметрического ядерного распределения, подгонки к выборочным данным.

См. также

| |

Похожие темы