dwt(waveslim)
dwt()所属R语言包:waveslim
Discrete Wavelet Transform (DWT)
离散小波变换(DWT)
译者:生物统计家园网 机器人LoveR
描述----------Description----------
This function performs a level J decomposition of the input vector or time series using the pyramid algorithm (Mallat 1989).
这个函数执行的水平J分解的输入向量时间序列的金字塔算法(MALLAT 1989)。
用法----------Usage----------
dwt(x, wf="la8", n.levels=4, boundary="periodic")
dwt.nondyadic(x)
参数----------Arguments----------
参数:x
a vector or time series containing the data be to decomposed. This must be a dyadic length vector (power of 2).
的向量或包含数据的时间序列分解。这必须是一个二元的长度矢量(2的幂)。
参数:wf
Name of the wavelet filter to use in the decomposition. By default this is set to "la8", the Daubechies orthonormal compactly supported wavelet of length L=8 (Daubechies, 1992), least asymmetric family.
的小波滤波器的名称使用在分解。默认情况下,此设置为"la8"的Daubechies正交的紧支撑小波的长度L=8(Daubechies小,1992年),至少不对称的家庭。
参数:n.levels
Specifies the depth of the decomposition. This must be a number less than or equal to log(length(x),2).
指定的深度的分解。这必须是一个小于或等于log(length(x),2)。
参数:boundary
Character string specifying the boundary condition. If boundary=="periodic" the default, then the vector you decompose is assumed to be periodic on its defined interval,<br> if boundary=="reflection", the vector beyond its boundaries is assumed to be a symmetric reflection of itself.
字符串指定的边界条件。如果boundary=="periodic"默认值,则假定矢量分解其定义的时间间隔上是周期性的,<br>请如果boundary=="reflection",超出其边界的矢量假定是一个对称反射本身。
Details
详细信息----------Details----------
The code implements the one-dimensional DWT using the pyramid algorithm (Mallat, 1989). The actual transform is performed in C using pseudocode from Percival and Walden (2001). That means convolutions, not inner products, are used to apply the wavelet filters.
该代码实现了使用金字塔算法(Mallat的,1989年)的一维DWT。实际的转换工作是在C程序中使用的伪代码由波斯富街和Walden(2001)。这意味着卷积,而不是内积,用于应用小波滤波器。
For a non-dyadic length vector or time series, dwt.nondyadic pads with zeros, performs the orthonormal DWT on this dyadic length series and then truncates the wavelet coefficient vectors appropriately.
对于非二进长向量或时间序列,dwt.nondyadic垫零,执行的正交小波变换在此二元长度系列,然后适当地截断的小波系数向量。
值----------Value----------
Basically, a list with the following components
基本上,与以下组件的列表
参数:d?
Wavelet coefficient vectors.
小波系数向量。
参数:s?
Scaling coefficient vector.
缩放系数向量。
参数:wavelet
Name of the wavelet filter used.
小波滤波器的名称。
参数:boundary
How the boundaries were handled.
的界限如何处理。
(作者)----------Author(s)----------
B. Whitcher
参考文献----------References----------
Ten Lectures on Wavelets, CBMS-NSF Regional Conference Series in Applied Mathematics, SIAM: Philadelphia.
An Introduction to Wavelets and Other Filtering Methods in Finance and Economics, Academic Press.
A theory for multiresolution signal decomposition: the wavelet representation, IEEE Transactions on Pattern Analysis and Machine Intelligence, 11, No. 7, 674-693.
Wavelet Methods for Time Series Analysis, Cambridge University Press.
参见----------See Also----------
modwt, mra.
modwt,mra。
实例----------Examples----------
## Figures 4.17 and 4.18 in Gencay, Selcuk and Whitcher (2001).[#数字在Gencay,塞尔丘克和Whitcher的(2001)的4.17和4.18。]
data(ibm)
ibm.returns <- diff(log(ibm))
## Haar[#哈尔]
ibmr.haar <- dwt(ibm.returns, "haar")
names(ibmr.haar) <- c("w1", "w2", "w3", "w4", "v4")
## plot partial Haar DWT for IBM data[#图部分哈尔DWT IBM数据]
par(mfcol=c(6,1), pty="m", mar=c(5-2,4,4-2,2))
plot.ts(ibm.returns, axes=FALSE, ylab="", main="(a)")
for(i in 1:4)
plot.ts(up.sample(ibmr.haar[[i]], 2^i), type="h", axes=FALSE,
ylab=names(ibmr.haar)[i])
plot.ts(up.sample(ibmr.haar$v4, 2^4), type="h", axes=FALSE,
ylab=names(ibmr.haar)[5])
axis(side=1, at=seq(0,368,by=23),
labels=c(0,"",46,"",92,"",138,"",184,"",230,"",276,"",322,"",368))
## LA(8)[#LA(八)]
ibmr.la8 <- dwt(ibm.returns, "la8")
names(ibmr.la8) <- c("w1", "w2", "w3", "w4", "v4")
## must shift LA(8) coefficients[#必须转移LA(8)系数]
ibmr.la8$w1 <- c(ibmr.la8$w1[-c(1:2)], ibmr.la8$w1[1:2])
ibmr.la8$w2 <- c(ibmr.la8$w2[-c(1:2)], ibmr.la8$w2[1:2])
for(i in names(ibmr.la8)[3:4])
ibmr.la8[[i]] <- c(ibmr.la8[[i]][-c(1:3)], ibmr.la8[[i]][1:3])
ibmr.la8$v4 <- c(ibmr.la8$v4[-c(1:2)], ibmr.la8$v4[1:2])
## plot partial LA(8) DWT for IBM data[#图部分LA(8)DWT IBM数据]
par(mfcol=c(6,1), pty="m", mar=c(5-2,4,4-2,2))
plot.ts(ibm.returns, axes=FALSE, ylab="", main="(b)")
for(i in 1:4)
plot.ts(up.sample(ibmr.la8[[i]], 2^i), type="h", axes=FALSE,
ylab=names(ibmr.la8)[i])
plot.ts(up.sample(ibmr.la8$v4, 2^4), type="h", axes=FALSE,
ylab=names(ibmr.la8)[5])
axis(side=1, at=seq(0,368,by=23),
labels=c(0,"",46,"",92,"",138,"",184,"",230,"",276,"",322,"",368))
转载请注明:出自 生物统计家园网(http://www.biostatistic.net)。
注:
注1:为了方便大家学习,本文档为生物统计家园网机器人LoveR翻译而成,仅供个人R语言学习参考使用,生物统计家园保留版权。
注2:由于是机器人自动翻译,难免有不准确之处,使用时仔细对照中、英文内容进行反复理解,可以帮助R语言的学习。
注3:如遇到不准确之处,请在本贴的后面进行回帖,我们会逐渐进行修订。
|