从平均值80和典型偏差30的正态分布中产生10个随机观测,让我们假设我们不知道分布的平均μ。使用样本,检查(检验)两个假设。
H0 : H1 = 80 vs H1:不等于80。
重复处理100次,每次只记录p值.使用5%的显着性级别来注释您的结果显示p值的所有值。
以下是我所做的
t<-c( rnorm(10, mean = 80, sd = 30))
t.test (y, mu = 80)
t.test(y, mu =80, alternative = ”greater”)$p.value
t.test(y, mu = 80, alternative = ”less”)$p.value备注:
假设在向量y中存储了样本的数据。这个命令
t.test(y,mu = 9)
使双面假设检查(检验),特别是检查来自数据的分布的平均值是否等于9,如果单方检查命令是,
t.test(y,mu = 9,alternative =“mu”)或t.test(y,mu= 9,alternative =“less”)
相应地。这些命令给出了检查(测试)的结果,包括置信区间。如果有人只想要p值的值,必须在end命令中添加$p.value .例如,命令
t.test (y,mu = 9) $p.value
只给出两个-sided检验(检验)假设的p值。
发布于 2014-11-23 21:59:36
编辑:我假设这是学校的作业,你对R很陌生。
不太清楚你的问题是什么..。但是,您的代码似乎包含了一些错误。
你创造了10个随机观察,平均80和sd 30。首先,这不是一个聪明的想法,因为t是转置的R命令--使用像这样重新定义保留名称的方法不是个好主意。
然后使用t.test命令执行测试。请注意,在R中,与Python不同的是,“。不引用对象的方法。因此,当您调用t.test(y . )时,您正在对未定义的观测向量y执行t检验。
你发布的注释假设你的观测向量实际上叫做y,如果你在R控制台中运行?t.test,你会看到y是对应于观测向量的t.test函数参数的默认名称。
你可能想要的是:
y<-c( rnorm(10, mean = 80, sd = 30))
t.test (y, mu = 80)
t.test(y, mu =80, alternative = "greater")$p.value
t.test(y, mu = 80, alternative = "less")$p.value但是请注意,对于观测向量,您可以使用任何合理的变量名--您只需要在正确的向量上调用t.test。例如,
sample_observations <- c( rnorm(10, mean = 80, sd = 30))
t.test (sample_observations, mu = 80)编辑:粘贴的代码片段中似乎有unicode。现在已经修好了
https://stackoverflow.com/questions/27094697
复制相似问题