boxcox

Преобразование Cox поля

Используя a fints объект для tsobj аргумент boxcox не рекомендуется. Использование fts2timetable преобразовывать fints возразите против timetable возразите и затем используйте timetable2table и table2array.

Синтаксис

[transdat,lambda] = boxcox(data)
[transfts,lambda] = boxcox(tsobj)
transdat = boxcox(lambda,data)
transfts = boxcox(lambda,tsobj)

Аргументы

data

Вектор данных. Должно быть положительно и задан как вектор данных столбца.

tsobj

Финансовый объект временных рядов.

Описание

boxcox необычно преобразовывает распределенные данные к набору данных, которые имеют приблизительно нормальное распределение. Преобразование Cox Поля является семейством преобразований степени.

Если λ не = 0то

data(λ)=dataλ1λ

Если λ = 0то

data(λ)=log(data)

Логарифм является натуральным логарифмом (журнал основывают e). Призывы алгоритма к нахождению λ значения, которое максимизирует Функцию логарифмической правдоподобности (LLF). Поиск проводится с помощью fminsearch.

[transdat,lambda] = boxcox(data) преобразовывает вектор данных data использование метода преобразования Cox Поля в transdat. Это также оценивает параметр преобразования λ.

[transfts,lambda] = boxcox(tsojb) преобразовывает финансовый объект tsobj временных рядов использование метода преобразования Cox Поля в transfts. Это также оценивает параметр преобразования λ.

Если входные данные являются вектором, lambda скаляр. Если вход является финансовым объектом временных рядов, lambda структура с полями, похожими на компоненты объекта; например, если объект содержит серийные имена Open и Close\lambda имеет поля lambda.Open и lambda.Close.

transdat = boxcox(lambda, data) и transfts = boxcox(lambda, tsobj) преобразуйте данные с помощью бесспорного заданного λ для преобразования Cox Поля. Этот синтаксис не находит оптимум λ, который максимизирует LLF.

Примеры

свернуть все

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

Создайте финансовый объект временных рядов из предоставленного whirlpool.dat файл данных.

whrl = ascii2fts('whirlpool.dat', 1, 2, []);
Warning: FINTS is not recommended. Use TIMETABLE instead. For more information, see <a href="matlab:web(fullfile(docroot, 'finance/convert-from-fints-to-timetables.html'))">Convert Financial Time Series Objects (fints) to Timetables</a>.

Заполните любые отсутствующие значения, обозначенные NaNв whrl со значениями, вычисленными с помощью метода Linear.

f_whrl = fillts(whrl);
Warning: FINTS is not recommended. Use TIMETABLE instead. For more information, see <a href="matlab:web(fullfile(docroot, 'finance/convert-from-fints-to-timetables.html'))">Convert Financial Time Series Objects (fints) to Timetables</a>.

Преобразуйте необычно распределенную заполненную серию f_whrl данных в нормально распределенное использование преобразование Cox Поля.

bc_whrl = boxcox(f_whrl);
Warning: FINTS is not recommended. Use TIMETABLE instead. For more information, see <a href="matlab:web(fullfile(docroot, 'finance/convert-from-fints-to-timetables.html'))">Convert Financial Time Series Objects (fints) to Timetables</a>.

Сравните результат Close ряд данных с нормальной (Гауссовой) функцией распределения вероятностей и необычно распределенным f_whrl.

subplot(2, 1, 1);
hist(f_whrl.Close);
Warning: FINTS is not recommended. Use TIMETABLE instead. For more information, see <a href="matlab:web(fullfile(docroot, 'finance/convert-from-fints-to-timetables.html'))">Convert Financial Time Series Objects (fints) to Timetables</a>.
grid; title('Nonnormally Distributed Data');
subplot(2, 1, 2);
hist(bc_whrl.Close);
Warning: FINTS is not recommended. Use TIMETABLE instead. For more information, see <a href="matlab:web(fullfile(docroot, 'finance/convert-from-fints-to-timetables.html'))">Convert Financial Time Series Objects (fints) to Timetables</a>.
grid; title('Box-Cox Transformed Data');

Figure contains 2 axes objects. Axes object 1 with title Nonnormally Distributed Data contains an object of type patch. Axes object 2 with title Box-Cox Transformed Data contains an object of type patch.

Столбчатая диаграмма на верхней части представляет функцию распределения вероятностей заполненного ряда данных, f_whrl, который является исходной серией whrl данных с отсутствующими значениями, интерполированными с помощью метода Linear. Распределение скашивается к левому (не нормально распределенный). Столбчатая диаграмма на нижней части менее скашивается налево. Если вы строите Гауссову функцию распределения вероятностей (PDF) с подобным средним и стандартным отклонением, распределение преобразованных данных очень близко к (Гауссову) нормальному. Когда вы исследуете содержимое полученного объекта bc_whrl, вы находите одинаковый объект к исходному объекту whrl но содержимое является преобразованным рядом данных.

Представлено до R2006a