分组后如何在一个函数(t.test)中使用2列
How to use 2 columns in one function(t.test) after group by
我有一个列表,我需要在其中对 2 列使用 t.test
函数。我知道我可以做到
t.test(myF$before, myF$after)
但是分组后我有很多组,一个一个做起来会很麻烦
我通过 SQL 查询获取数据,如下所示:
myF <- sqlQuery(conn, 'Select colA, colB, colC, before, after from MyTable')
以下代码将逐一给出 before
和 after
列的意思
aggregate(cbind(before = before, after = after) ~ colA+colB+colC,
data = myF,
FUN = mean)
输出类似于:
colA colB colC before after
GroupA1 GroupB1 GroupC1 110 11
GroupA2 GroupB1 GroupC1 44 15
GroupA3 .....................
......
所以我想在每个组的 before
和 after
列之间获得 t.test
个结果。我怎样才能做到这一点?
您没有提供明确的输入或预期的输出,但它看起来像,例如,
myF %>% group_by(colA, colB, colC) %>% summarise(pval = t.test(.$before, .$after)$p.val)
应该达到你想要的。
我有一个列表,我需要在其中对 2 列使用 t.test
函数。我知道我可以做到
t.test(myF$before, myF$after)
但是分组后我有很多组,一个一个做起来会很麻烦
我通过 SQL 查询获取数据,如下所示:
myF <- sqlQuery(conn, 'Select colA, colB, colC, before, after from MyTable')
以下代码将逐一给出 before
和 after
列的意思
aggregate(cbind(before = before, after = after) ~ colA+colB+colC,
data = myF,
FUN = mean)
输出类似于:
colA colB colC before after
GroupA1 GroupB1 GroupC1 110 11
GroupA2 GroupB1 GroupC1 44 15
GroupA3 .....................
......
所以我想在每个组的 before
和 after
列之间获得 t.test
个结果。我怎样才能做到这一点?
您没有提供明确的输入或预期的输出,但它看起来像,例如,
myF %>% group_by(colA, colB, colC) %>% summarise(pval = t.test(.$before, .$after)$p.val)
应该达到你想要的。