boxcox

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

boxcox был частично удален и больше не будет принимать fints объект (tsobj).

Замените все экземпляры fints объект (tsobj) для входа с массивом при помощи 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(λ)=журнал(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 will be removed in a future release. 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 will be removed in a future release. 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 will be removed in a future release. 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 will be removed in a future release. 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 will be removed in a future release. 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');

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

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