WatsonUSquareTest[data]
使用Watson
检验判断 data 是否服从正态分布.
WatsonUSquareTest[data,dist]
使用 Watson
检验判断 data 是否服从 dist 分布.
WatsonUSquareTest[data,dist,"property"]
返回 "property" 的值.
WatsonUSquareTest
WatsonUSquareTest[data]
使用Watson
检验判断 data 是否服从正态分布.
WatsonUSquareTest[data,dist]
使用 Watson
检验判断 data 是否服从 dist 分布.
WatsonUSquareTest[data,dist,"property"]
返回 "property" 的值.
更多信息和选项
- WatsonUSquareTest 执行 Watson
拟合优度检验,其中零假设
为 data 取自分布为 dist 的总体,而备择假设
则对此否定. - 默认情况下,返回一个概率值或者
值. - 一个较小的
值表明 data 不可能服从 dist. - dist 可以是任意具有数值和符号参数或者数据集的符号分布.
- data 可以是单变量 {x1,x2,…} 或多变量 {{x1,y1,…},{x2,y2,…},…}.
- Watson
检验假设数据服从一个连续分布. - Watson
检验实际上使用基于
的检验统计量,其中
,且
,
是 data 的经验累积分布函数,而
是 dist 的累积分布函数. - 对于多变量检验,使用单变量边缘
值的总和并假设遵循
下的 UniformSumDistribution. - WatsonUSquareTest[data,dist,"HypothesisTestData"] 返回一个 HypothesisTestData 对象 htd,通过使用 htd["property"] 的形式,它可以用来提取额外的检验结果和属性.
- WatsonUSquareTest[data,dist,"property"] 可以用来直接给出 "property" 的值.
- 与检验报告相关的属性包括:
-
"PValue"
值"PValueTable" "PValue" 的格式化版本 "ShortTestConclusion" 一个检验结论的简短描述 "TestConclusion" 一个检验结论的描述 "TestData" 检验统计量和
值"TestDataTable" "TestData" 的格式化版本 "TestStatistic" 检验统计量 "TestStatisticTable" 格式化的 "TestStatistic" - 下列属性与所执行的检验类型无关.
- 与数据分布相关的属性包括:
-
"FittedDistribution" 数据的拟合分布 "FittedDistributionParameters" 数据的分布参数 - 可以给出下列选项:
-
Method Automatic 计算
值所用的方法SignificanceLevel 0.05 诊断和报告的分界点 - 对于一个拟合优度检验,选择一个临界值
,以使得只有当
时,否定
. 用于 "TestConclusion" 和 "ShortTestConclusion" 属性的
值由 SignificanceLevel 选项控制. 默认情况下,
设为 0.05. - 在设置 Method->"MonteCarlo" 下,在
下使用拟合分布,生成
个与输入
具有相同长度的数据集. 来自WatsonUSquareTest[si,dist,"TestStatistic"] 的 EmpiricalDistribution 用于估计
值.
范例
打开所有单元 关闭所有单元基本范例 (4)
data = RandomVariate[NormalDistribution[], 10^4];WatsonUSquareTest[data]data = RandomVariate[LaplaceDistribution[1, 2], 10^3];WatsonUSquareTest[data, LaplaceDistribution[1, 2]]data1 = RandomVariate[NormalDistribution[], 100];data2 = RandomVariate[NormalDistribution[], 150];WatsonUSquareTest[data1, data2]data = RandomVariate[NormalDistribution[], 10^3];WatsonUSquareTest[data, NormalDistribution[], "TestStatistic"]范围 (9)
检验 (6)
data1 = RandomVariate[NormalDistribution[], 10^4];
data2 = RandomVariate[StudentTDistribution[3], 10^4];WatsonUSquareTest[data1]WatsonUSquareTest[data2]data1 = RandomVariate[NormalDistribution[], 10^3];
data2 = RandomVariate[CauchyDistribution[0, 1], 10^3];WatsonUSquareTest[data1, CauchyDistribution[0, 1]]WatsonUSquareTest[data2, CauchyDistribution[0, 1]]data1 = RandomVariate[NormalDistribution[], 10^3];
data2 = RandomVariate[NormalDistribution[], 10^3];WatsonUSquareTest[data1, data2]data3 = RandomVariate[NormalDistribution[0, 1.25], 10^3];WatsonUSquareTest[data1, data3]data1 = RandomVariate[BinormalDistribution[.5], 10^3];
data2 = RandomVariate[LaplaceDistribution[1, 2], {10^3, 2}];WatsonUSquareTest[data1]WatsonUSquareTest[data2]data1 = RandomVariate[BinormalDistribution[.5], 10^3];
data2 = RandomVariate[𝒹 = LaplaceDistribution[1, 2], {10^3, 2}];𝒟 = ProductDistribution[𝒹, 𝒹];WatsonUSquareTest[data1, 𝒟]WatsonUSquareTest[data2, 𝒟]创建一个 HypothesisTestData 对象以进行重复属性提取:
data = RandomVariate[NormalDistribution[], 10^5];ℋ = WatsonUSquareTest[data, Automatic, "HypothesisTestData"]ℋ["Properties"]报告 (3)
data = RandomVariate[NormalDistribution[], 100];ℋ = WatsonUSquareTest[data, Automatic, "HypothesisTestData"];ℋ["TestDataTable"]ℋ["PValueTable"]ℋ["TestStatisticTable"]从一个 Watson
检验表中提取项目,用于生成定制的报告:
data1 = RandomVariate[NormalDistribution[], 100];
data2 = RandomVariate[NormalDistribution[], 100];ℋ1 = WatsonUSquareTest[data1, Automatic, "TestData"]ℋ2 = WatsonUSquareTest[data2, Automatic, "TestData"]BarChart[{Labeled[ℋ1, "Set 1"], Labeled[ℋ2, "Set 2"]}, ChartLabels -> {"SubscriptBox[D, n]", "p‐value"}]使用 "ShortTestConclusion" 和 "TestConclusion" 报告检验结论:
data = BlockRandom[SeedRandom[1];RandomVariate[ParetoDistribution[1.05, 2], 100]];ℋ = WatsonUSquareTest[data, ParetoDistribution[1, 2], "HypothesisTestData"];ℋ["ShortTestConclusion"]ℋ["TestConclusion"]//TraditionalFormℋ = WatsonUSquareTest[data, ParetoDistribution[1, 2], "HypothesisTestData", SignificanceLevel -> .001];ℋ["ShortTestConclusion"]ℋ["TestConclusion"]//TraditionalForm选项 (3)
Method (3)
data = RandomVariate[NormalDistribution[], 100];WatsonUSquareTest[data, NormalDistribution[], Method -> "MonteCarlo"]WatsonUSquareTest[data, NormalDistribution[], Method -> Automatic]data = RandomVariate[NormalDistribution[], 100];pts = Table[{i, WatsonUSquareTest[data, NormalDistribution[], Method -> {"MonteCarlo", "MonteCarloSamples" -> i}]}, {i, Range[5, 100, 5]}];pval = WatsonUSquareTest[data, NormalDistribution[]];Show[ListLinePlot[pts, PlotRange -> {0, 1}, FrameLabel -> {"Samples", "P-Value"}, Frame -> True, AxesOrigin -> {0, 0}], Graphics[{Dashed, Line[{{0, pval}, {100, pval}}]}]]data = RandomVariate[NormalDistribution[], 100];pts = Table[{i, WatsonUSquareTest[data, NormalDistribution[], Method -> {"MonteCarlo", "RandomSeed" -> i, "MonteCarloSamples" -> 50}]}, {i, Range[1, 10]}];pval = WatsonUSquareTest[data, NormalDistribution[]];Show[ListLinePlot[pts, PlotRange -> {Min[pts[[All, 2]]], Max[pts[[All, 2]]]}, FrameLabel -> {"Seed", "P-Value"}, Frame -> True, AxesOrigin -> {0, 0}], Graphics[{Dashed, Line[{{0, pval}, {100, pval}}]}]]应用 (2)
data = Table[RandomVariate[UniformDistribution[{-4, 4}], {500, i}], {i, n = {5, 7, 10, 15, 20, 25, 30}}];ℋ = Table[WatsonUSquareTest[data[[i, j]], NormalDistribution[]], {i, Length[data]}, {j, Length[data[[i]]]}];pC = Interpolation[Transpose[{n, Table[Probability[x ≤ 0.05, xi], {i, ℋ}]}], InterpolationOrder -> 1];Plot[pC[x], {x, 5, 30}, PlotRange -> {0, 1}, Ticks -> {n, Automatic}, AxesOrigin -> {0, 0}]当内在分布是一个 UniformDistribution[{-4,4}],检验大小为0.05,样本数为 12 时,估计 Watson
检验的功效:
pC[12.]统计课中,决定测试一个旋转盘游戏来学习偏差. 班上的50名学生,每人旋转一次,并用一个设备来记录每次旋转的角度(以弧度为单位):
data = {25.1, 28.51, 15.58, 7.98, 7.87, 28.9, 28.72, 10.64, 27.33, 23.86, 6.49, 11.02, 8.66, 28.84, 31.14, 24.05, 15.92, 12.66, 20.31, 17.06, 17.45, 21.94, 9.8, 7.26, 11.44, 23.78, 18.83, 13.17, 23.12, 18.06, 21.79, 26.57, 22.11, 21.12, 13.24, 24.26, 18.48, 28.63, 20.51, 8.21, 21.82, 17.09, 30.67, 14.99, 28.42, 21.64, 16.75, 8.06, 9.5, 30.55};ListPlot[Table[{Cos[x], Sin[x]}, {x, data}], AspectRatio -> 1]conv[d_] := With[{r = d / 2π}, 2π(r - IntegerPart[r])]cData = conv /@ data;WatsonUSquareTest[cData, UniformDistribution[{0, 2π}], "TestDataTable"]属性和关系 (8)
默认情况下,单变量数据与一个 NormalDistribution 进行比较:
data = RandomVariate[NormalDistribution[2, 3], 10^4];ℋ = WatsonUSquareTest[data, Automatic, "HypothesisTestData"];ℋ["TestDataTable"]ℋ["FittedDistribution"]默认情况下,多变量数据与一个 MultinormalDistribution 进行比较:
data = RandomVariate[MultinormalDistribution[{1, 2, 3}, IdentityMatrix[3]], 1000];ℋ = WatsonUSquareTest[data, Automatic, "HypothesisTestData"];ℋ["TestDataTable"]ℋ["FittedDistribution"]//TraditionalFormdata = RandomVariate[NormalDistribution[1, 2], 1000];WatsonUSquareTest[data, NormalDistribution[μ, σ], "FittedDistribution"]WatsonUSquareTest[data, NormalDistribution[μ, 2], "FittedDistribution"]WatsonUSquareTest[data, NormalDistribution[1, 2], "FittedDistribution"]data = RandomVariate[ExponentialDistribution[3], 10^3];ℋ = WatsonUSquareTest[data, ExponentialDistribution[λ], "FittedDistribution"]WatsonUSquareTest[data, ExponentialDistribution[λ]]如果参数未知,则当可能的情况下,WatsonUSquareTest 应用一次校正:
data = RandomVariate[NormalDistribution[3, 4], 10^4];est = EstimatedDistribution[data, NormalDistribution[μ, σ]]WatsonUSquareTest[data, est]ℋ = WatsonUSquareTest[data, NormalDistribution[μ, σ], "HypothesisTestData"];ℋ["FittedDistribution"]ℋ["PValue"]data = RandomVariate[MultinormalDistribution[{0, 0}, {{0.118, 0.252}, {0.252, 0.665}}], 100];WatsonUSquareTest[data, MultinormalDistribution[{0, 0}, {{0.118, 0.252}, {0.252, 0.665}}], "TestStatistic"]WatsonUSquareTest[data, MultinormalDistribution[{0, 0}, {{0.118, 0}, {0, 0.665}}], "TestStatistic"]Watson
统计量可以使用 NExpectation 定义:
n = 10;
h0 = NormalDistribution[1, 2];
data = RandomVariate[h0, n];f[x_] := CDF[h0, x]
Overscript[f, ^ ][x_] := CDF[EmpiricalDistribution[data], x]d[x_] := Overscript[f, ^ ][x] - f[x]
Overscript[d, _] = NExpectation[d[x], xh0];n NExpectation[(d[x] - Overscript[d, _]) ^ 2, xh0]WatsonUSquareTest[data, h0, "TestStatistic"]仅当输入为 TimeSeries 时,Watson
检验适用于值:
ts = TemporalData[TimeSeries, {{{1.224578634529677, 0.47929635789978015, 0.6572781300178168,
0.21496048742669355, 0.7299608014554928, -0.2495111111278263, -1.3286551762002712,
0.552725018274874, 0.19272112205837066, 1.1809144012420882, -1.1671 ... 40938613662046, 1.052394590214582, 0.9345044123980388, 0.38537803109557855,
-0.48660931166089394, -0.71203560340161}}, {{0, 100, 1}}, 1, {"Continuous", 1},
{"Discrete", 1}, 1, {ValueDimensions -> 1, ResamplingMethod -> None}}, False, 10.1];WatsonUSquareTest[ts]WatsonUSquareTest[ts["Values"]]可能存在的问题 (3)
data = RandomVariate[DiscreteUniformDistribution[{-10, 10}], 35];WatsonUSquareTest[data, DiscreteUniformDistribution[{-10, 10}]]sim = RandomVariate[DiscreteUniformDistribution[{-10, 10}], {500, 35}];p = Quiet[WatsonUSquareTest[#, DiscreteUniformDistribution[{-10, 10}]]]& /@ sim;Show[ListLinePlot[Table[{α, Probability[pv ≤ α, pvp]}, {α, .01, 1, .01}]], Plot[x, {x, 0, 1}, PlotStyle -> Dashed]]sim = RandomVariate[DiscreteUniformDistribution[{1, 3}], {500, 35}];p = Quiet[WatsonUSquareTest[#, DiscreteUniformDistribution[{1, 3}]]]& /@ sim;Show[ListLinePlot[Table[{α, Probability[pv ≤ α, pvp]}, {α, .01, 1, .01}]], Plot[x, {x, 0, 1}, PlotStyle -> Dashed]]在这些情况下,使用蒙特卡洛方法或 PearsonChiSquareTest:
WatsonUSquareTest[sim[[1]], DiscreteUniformDistribution[{1, 3}], Method -> "MonteCarlo"]PearsonChiSquareTest[sim[[1]], DiscreteUniformDistribution[{1, 3}]]当参数已经从数据中估计得到时,Watson
检验对某些分布是无效的:
data = RandomVariate[BetaDistribution[1, 2], 100];WatsonUSquareTest[data, BetaDistribution[1, b]]WatsonUSquareTest[data, BetaDistribution[1, 2]]WatsonUSquareTest[data, BetaDistribution[1, b], Method -> "MonteCarlo"]data = RandomVariate[NormalDistribution[], 1000];WatsonUSquareTest[Join[data, {First[data]}]]PearsonChiSquareTest[Join[data, {First[data]}]]WatsonUSquareTest[Join[data, data]]PearsonChiSquareTest[Join[data, data]]巧妙范例 (1)
data = RandomVariate[NormalDistribution[], {500, 100}];T1 = WatsonUSquareTest[#, NormalDistribution[], "TestStatistic"]& /@ data;T2 = WatsonUSquareTest[#, LaplaceDistribution[1, 2], "TestStatistic"]& /@ data;SmoothHistogram[{T1, T2}, Filling -> Axis, PlotLegends -> {"SubscriptBox[H, 0] is True", "SubscriptBox[H, 0] is False"}, PlotRange -> All]相关指南
-
▪
- 假设检验
文本
Wolfram Research (2010),WatsonUSquareTest,Wolfram 语言函数,https://reference.wolfram.com/language/ref/WatsonUSquareTest.html.
CMS
Wolfram 语言. 2010. "WatsonUSquareTest." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/WatsonUSquareTest.html.
APA
Wolfram 语言. (2010). WatsonUSquareTest. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/WatsonUSquareTest.html 年
BibTeX
@misc{reference.wolfram_2026_watsonusquaretest, author="Wolfram Research", title="{WatsonUSquareTest}", year="2010", howpublished="\url{https://reference.wolfram.com/language/ref/WatsonUSquareTest.html}", note=[Accessed: 03-November-2026]}
BibLaTeX
@online{reference.wolfram_2026_watsonusquaretest, organization={Wolfram Research}, title={WatsonUSquareTest}, year={2010}, url={https://reference.wolfram.com/language/ref/WatsonUSquareTest.html}, note=[Accessed: 03-November-2026]}