R 使用所谓的“方法”来执行不同的行为,具体取决于赋予函数的对象类型。
t.test(Head_IC~make, alternative= "two.sided", paired=T)
不同于
t.test(Head_IC, make, alternative= "two.sided", paired=T)
因为第一个接受一个公式参数,其中所有数字数据都在Head_IC
,所有类别数据都在make
。第二种形式假定第一组的Head_IC
所有数值数据都在 中,而第二组的所有数值数据都在 中make
。
这是有益的,因为它允许您方便地获得相同的结果,即使您的数据格式可能略有不同。
不幸的是,正如您所发现的,您的数据格式不适合使用t.test
. 有几种方法可以解决这个问题。
子集您的数据
data_subset <- your_data_object[your_data_object$make %in% c("Ford", "Chevrolet"), ]
t.test(Head_IC~make, alternative= "two.sided", paired=T, data = data_subset)
获取两个向量
Ford <- your_data_object$Head_IC[your_data_object$make == "Ford"]
Chev <- your_data_object$Head_IC[your_data_object$make == "Chevrolet"]
t.test(Ford, Chev, alternative = "two.sided", paired = TRUE)
有很多很多方法可以解决您的问题,并且您可能想研究如何对您正在使用的任何工具集工作的数据进行子集化和转换。