在Dataframe中的过滤列上运行T测试

时间:2015-08-14 16:12:08

标签: r dataframe statistics

我有一个包含3列的数据框:
df =

+------+------+---+
| Var1 | Var2 | n |
+------+------+---+
| Y    | N    | 5 |
| Y    | Y    | 6 |
| Y    | N    | 3 |
| N    | Y    | 8 |
| N    | N    | 1 |
| N    | Y    | 9 |
+------+------+---+

我想对n中的值进行t检验,对于Var2中的Y对N,但仅当Var1 = Y时才这样做。这可能吗?

1 个答案:

答案 0 :(得分:2)

我们可以使用data.table。将'data.frame'转换为'data.table'(setDT(df)),我们设置逻辑条件Var1=='Y'来索引行,子集'n'元素Var2=='N'和{{ 1}}分开,然后执行Var2=='Y'

t.test