matlab中jbtest,Jarque-Bera test

jbtest

Description

h = jbtest(x) returns

a test decision for the null hypothesis that the data in vector x comes

from a normal distribution with an unknown mean and variance, using

the Jarque-Bera test.

The alternative hypothesis is that it does not come from such a distribution.

The result h is 1 if the test

rejects the null hypothesis at the 5% significance level, and 0 otherwise.

h = jbtest(x,alpha) returns

a test decision for the null hypothesis at the significance level

specified by alpha.

h = jbtest(x,alpha,mctol) returns

a test decision based on a p-value computed using

a Monte Carlo simulation with a maximum Monte Carlo standard error less

than or equal to mctol.

[h,p] =

jbtest(___) also returns the p-value p of

the hypothesis test, using any of the input arguments from the previous

syntaxes.

[h,p,jbstat,critval]

= jbtest(___)

also returns the test statistic jbstat and the critical value

critval for the test.

Examples

Test for a Normal Distribution

Load the data set.

load carbig

Test the null hypothesis that car mileage, in miles per gallon (MPG), follows a normal distribution across different makes of cars.

h = jbtest(MPG)

h = 1

The returned value of h = 1 indicates that jbtest rejects the null hypothesis at the default 5% significance level.

Test the Hypothesis at a Different Significance Level

Load the data set.

load carbig

Test the null hypothesis that car mileage in miles per gallon (MPG) follows a normal distribution across different makes of cars at the 1% significance level.

[h,p] = jbtest(MPG,0.01)

h = 1

p = 0.0022

The returned value of h = 1, and the returned p-value less than α = 0.01 indicate that jbtest rejects the null hypothesis.

Test for a Normal Distribution Using Monte Carlo Simulation

Load the data set.

load carbig

Test the null hypothesis that car mileage, in miles per gallon (MPG), follows a normal distribution across different makes of cars. Use a Monte Carlo simulation to obtain an exact p-value.

[h,p,jbstat,critval] = jbtest(MPG,[],0.0001)

h = 1

p = 0.0022

jbstat = 18.2275

critval = 5.8461

The returned value of h = 1 indicates that jbtest rejects the null hypothesis at the default 5% significance level. Additionally, the test statistic, jbstat, is larger than the critical value, critval, which indicates rejection of the null hypothesis.

Input Arguments

x — Sample data

vector

Sample data for the hypothesis test, specified as a vector. jbtest treats NaN values

in x as missing values and ignores them.

Data Types:single | double

alpha — Significance level

0.05 (default) | scalar value in the range (0,1)

Significance level of the hypothesis test, specified as a scalar

value in the range (0,1). If alpha is in the range

[0.001,0.50], and if the sample size is less than or equal to 2000, jbtest looks

up the critical value for the test in a table of precomputed values.

To conduct the test at a significance level outside of these specifications,

use mctol.

Example:0.01

Data Types:single | double

mctol — Maximum Monte Carlo standard error

nonnegative scalar value

Maximum Monte

Carlo standard error for the p-value, p,

specified as a nonnegative scalar value. If you specify a value for mctol, jbtest computes

a Monte Carlo approximation for p directly, rather

than interpolating into a table of precomputed values. jbtest chooses

the number of Monte Carlo replications large enough to make the Monte

Carlo standard error for p less than mctol.

If you specify a value for mctol, you must

also specify a value for alpha. You can specify alpha as [] to

use the default value of 0.05.

Example:0.0001

Data Types:single | double

Output Arguments

h — Hypothesis test result

1 | 0

Hypothesis test result, returned as 1 or 0.

If h = 1,

this indicates the rejection of the null hypothesis at the alpha significance

level.

If h = 0,

this indicates a failure to reject the null hypothesis at the alpha significance

level.

p — p-value

scalar value in the range (0,1)

p-value of the test, returned as a scalar

value in the range (0,1). p is the probability

of observing a test statistic as extreme as, or more extreme than,

the observed value under the null hypothesis. Small values of p cast

doubt on the validity of the null hypothesis.

jbtest warns when p is

not found within the tabulated range of [0.001,0.50], and returns

either the smallest or largest tabulated value. In this case, you

can use mctol to compute a more accurate p-value.

jbstat — Test statistic

nonnegative scalar value

Test statistic for the Jarque-Bera test, returned as a nonnegative

scalar value.

critval — Critical value

nonnegative scalar value

Critical value for the Jarque-Bera test at the alpha significance

level, returned as a nonnegative scalar value. If alpha is

in the range [0.001,0.50], and if the sample size is less than or

equal to 2000, jbtest looks up the critical value

for the test in a table of precomputed values. If you use mctol, jbtest determines

the critical value of the test using a Monte Carlo simulation. The

null hypothesis is rejected when jbstat > critval.

More About

Jarque-Bera Test

The Jarque-Bera test is a two-sided goodness-of-fit

test suitable when a fully specified null distribution is unknown

and its parameters must be estimated.

The test is specifically designed for alternatives in the Pearson

system of distributions. The test statistic is

JB=n6(s2+(k−3)24),

where n is the sample size, s is

the sample skewness, and k is the sample kurtosis.

For large sample sizes, the test statistic has a chi-square distribution

with two degrees of freedom.

Monte Carlo Standard Error

The Monte Carlo standard error is the error

due to simulating the p-value.

The Monte Carlo standard error is calculated as

SE=(p^)(1−p^)mcreps,

where p^ is

the estimated p-value of the hypothesis test, and mcreps is

the number of Monte Carlo replications performed. jbtest chooses

the number of Monte Carlo replications, mcreps,

large enough to make the Monte Carlo standard error for p^ less than the value specified

for mctol.

Algorithms

Jarque-Bera tests often use the chi-square distribution to estimate

critical values for large samples, deferring to the Lilliefors test

(see lillietest) for small samples. jbtest,

by contrast, uses a table of critical values computed using Monte

Carlo simulation for sample sizes less than 2000 and significance

levels from 0.001 to 0.50. Critical values for a test are computed

by interpolating into the table, using the analytic chi-square approximation

only when extrapolating for larger sample sizes.

References

[1] Jarque, C. M., and A. K. Bera. “A

Test for Normality of Observations and Regression Residuals.” International

Statistical Review. Vol. 55, No. 2, 1987, pp. 163–172.

[2] Deb, P., and M. Sefton. “The Distribution

of a Lagrange Multiplier Test of Normality.” Economics

Letters. Vol. 51, 1996, pp. 123–130. This paper

proposed a Monte Carlo simulation for determining the distribution

of the test statistic. The results of this function are based on an

independent Monte Carlo simulation, not the results in this paper.

Introduced before R2006a

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值