PANDAS中的等效t检验结果?

时间:2013-11-22 15:36:52

标签: python r pandas dataframe

我正在尝试学习一些PANDAS,因此我正在阅读一些R代码并试图在Python中重现这些内容。

我有以下简单的例子

tempdat <- data.frame(unit=c('feet','feet','feet','feet','metres','metres','metres','metres'),
                  feet=c(50,45,75,60,26,32,40,45))
t.test(feet~unit, alternative='two.sided', conf.level=.95, var.equal=F, data=tempdat)

我想在Python中使用等效函数,这是我到目前为止所做的,但结果是不同的。

tempdat = pd.DataFrame({'unit':['feet','feet','feet','feet','metres','metres','metres','metres'], 'feet':[50,45,75,60,26,32,40,45]})
feet_group = tempdat[tempdat['unit']=='feet']
metres_group = tempdat[tempdat['unit']=='metres']
stats.ttest_ind(feet_group['feet'], metres_group['feet'], equal_var=False)

1 个答案:

答案 0 :(得分:0)

在第一行的脸上出现错误: tempdat是python内置字典。因此它必须具有唯一键。所以在定义之后

tempdat={'feet':50,'feet':45,'feet':75,'feet':60,'metres':26,'metres':32,'metres':40,'metres':45}

您将只有最后一个值:

tempdat={'feet': 60, 'metres': 45}

因此测试结果不同