MATLAB 帮助中心
博克斯-考克斯变换
[transdat,lambda] = boxcox(data)
transdat = boxcox(lambda,data)
[transdat,lambda] = boxcox(data) 使用博克斯-考克斯变换方法将数据向量 data 变换为 transdat。它还计算变换参数 λ。有关详细信息,请参阅博克斯-考克斯变换。
transdat
lambda
data
示例
transdat = boxcox(lambda,data) 对于博克斯-考克斯变换使用特定的 λ 变换 data。此语法未找到最大化 LLF 的最优 λ 值。有关详细信息,请参阅博克斯-考克斯变换。
全部折叠
使用 boxcox 将数据向量中包含的数据序列变换为另一组具有相对正态分布的数据序列。
boxcox
加载 SimulatedStock.mat 数据文件。
SimulatedStock.mat
load SimulatedStock.mat
使用博克斯-考克斯变换将非正态分布的填充数据序列 TMW_CLOSE 变换为正态分布的数据序列。
TMW_CLOSE
[Xbc, lambdabc] = boxcox(TMW_CLOSE)
Xbc = 1000×1 7.8756 7.8805 7.9173 7.8557 7.8245 7.7844 7.7811 7.8029 7.8015 7.7229 7.6870 7.6825 7.7447 7.6958 7.6596 ⋮
lambdabc = 0.2151
将正态(高斯)概率分布函数的 TMW_CLOSE 数据序列的结果与非正态分布的 TMW_CLOSE 数据序列的结果进行比较。
subplot(2, 1, 1); histogram(TMW_CLOSE); grid; title('Nonnormally Distributed Data'); subplot(2, 1, 2); histogram(Xbc); grid; title('Box-Cox Transformed Data');
顶部的条形图表示数据序列 TMW_CLOSE(即原始数据序列)的概率分布函数。分布偏向左侧(非正态分布)。底部的条形图左倾程度较低。如果您绘制具有相似均值和标准差的高斯概率分布函数 (PDF),则变换后的数据分布逼近正态分布(高斯)。当您检查生成的对象 Xbc 的内容时,会发现与原始对象 TMW_CLOSE 完全相同的对象,但内容是变换后的数据序列。
Xbc
数据,指定为正列向量。
数据类型: double
double
Lambda,指定为标量数值或结构体。
如果输入 data 是向量,则 lambda 是标量。如果输入是金融时间序列对象 (tsobj),则 lambda 是具有类似对象分量的字段的结构体。例如,如果 tsobj 包含序列名称 Open 和 Close,则 lambda 包含字段 lambda.Open 和 lambda.Close。
tsobj
Open
Close
lambda.Open
lambda.Close
数据类型: double | struct
struct
数据的博克斯-考克斯变换,以向量形式返回。
Lambda 变换参数,以数值形式返回。
boxcox 将非正态分布的数据转换为近似正态分布的数据集。博克斯-考克斯变换是一系列幂变换。
如果 λ 不等于 0,则
0
data(λ)=dataλ−1λ
如果 λ 等于 0,则
data(λ)=log(data)
对数是自然对数(以 e 为底数的对数)。该算法要求找到最大化对数似然函数 (LLF) 的 λ 值。搜索使用 fminsearch 进行。
fminsearch
全部展开
fints
transfts
已从 boxcox 中删除支持 fints 对象的 tsobj 输入参量以及 transfts 输出参量。
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处