繁体   English   中英

编写 function 以运行 F 检验,并在 function 内部进行两个单独的 shapiro-wilks 检验

[英]Writing a function to run a F-test with two separate shapiro-wilks tests conducted inside the function

function应该执行如下: function取arguments: x1, x2, alt = "two-sided", lev = 0.95,其中相等表示默认值。

• arguments x1 和x2 分别是X1 和X2 样本。

• 参数alt 是另一种假设,其另外两个可能的值是“更大”和“更小”。

•参数lev 是置信度1 −α。 二. function 返回一个 R 列表,其中包含检验统计量、p 值、置信水平和置信区间。

三. 在 function 内部,分别对两个样本进行了两个 Shapiro-Wilk 正态性检验(注意问题开头的正态性假设)。 如果一个或两个 p 值小于 0.05,则会打印一条警告消息来解释这种情况。

到目前为止,这是我想出的但不确定如何创建一个 function 来同时运行:

library(stats)
x1 <- c(103, 94, 110, 87, 98, 102, 86, 98, 109, 92)
x2 <- c(97, 82, 123, 92, 175, 88, 118, 81, 165, 97, 134, 92, 87, 114)
var.test(x1, x2, alternative = "two.sided", conf.level = 0.95)

shapiro.test(x1)$p.value < 0.05|shapiro.test(x2)$p.value < 0.05

一些提示:

  1. 你的任务是写一个function ,所以你应该有这样的东西:
my_function <- function(x1, x2, alt = "two-sided", level = 0.95){
  # fill in the body of the function here
}

你可以在 function 的主体中做任何你需要做的事情。

  1. 回想一下,在 R 中,function 的最后评估行自动成为其返回值。 因此,您可以选择将最后一行设为问题陈述中所述的list(...)

  2. 将测试结果等作为变量存储在您的 function 中会很有用,例如test_output_1 <-...这样您稍后就可以在 function 的正文中引用这些内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM