基础 - T 检验 -> 分组因子必须恰好有 2 个水平

问题描述 投票:0回答:4

我对 R 比较陌生。对于我的任务,我必须首先进行 T 检验,观察政客(保守党或工党)的财富对其实际总财富和实际净财富的影响。我必须尝试使用简单的 t 检验来估计在办公室财富中任职的影响。

数据集名为 takehome.dta

工党和保守党是二元的,其中 1 表示他们为该党服务,否则为 0。

财富的变量是 lnrealgross 和 lnrealnet。

我已经导入并附加了数据集,但是当我尝试进行简单的 t 检验时。我收到以下消息“分组因素必须恰好有 2 个级别”。不太确定我哪里出了问题。任何援助将不胜感激!

r grouping factors
4个回答
18
投票

你在做这个吗:

t.test(y~x)

当你打算这样做时

t.test(y,x)

一般使用

~
然后你就会得到类似的数据

y <- 1:10
x <- rep(letters[1:2], each = 5)

,
当你有像

这样的数据时
y <- 1:5
x <- 6:10

我假设你正在做类似的事情:

y <- 1:10
x <- rep(1,10)
t.test(y~x) #instead of t.test(y,x)

因为错误表明您的分组因素没有变化

x


5
投票

~ 和 , 之间的差异是您正在运行的统计测试的类型。 ~ 给你平均差异。这适用于相关样本(例如之前和之后)。 ,为您提供均值差异。这适用于独立样本(例如处理和对照)。这两个测试不可互换。


1
投票

我遇到了类似的问题,并且没有意识到考虑到我的数据集的大小,我的其中一个 y 没有我的级别之一的值。我对两组进行了一系列基因读数,其中一个基因仅对第 2 组进行了读数,而不对第 1 组进行了读数。我什至没有注意到,但由于某种原因,这出现了与如果我也有读数时会得到的错误相同的错误。许多级别。解决方案是从我的分析中删除 y 或在我的例子中的基因,然后错误就解决了。


0
投票

您必须拥有一个只有两组的自变量,例如组 1 和组 2。

自变量是名义变量。例如:您将自变量称为:groups。

然后你还有因变量,它是度量的。

例如:您有一个因变量:体重。

这是公制的。

数据框称为:数字

在 R 中输入:

t.test(dataframe$因变量~dataframe$自变量, var.equal = TRUE, Alternative = "two.side")

t.test(numbers$weight~numbers$groups, var.equal = TRUE, Alternative = "two.side")

如果方差不相等,则写:

var.equal = FALSE

如果你有一个定向假设,你可以写:

替代=“更大”

替代=“少”

希望对您有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.