71

パンダの2つのカテゴリの平均を計算したい場合は、次のように計算できます。

data = {'Category': ['cat2','cat1','cat2','cat1','cat2','cat1','cat2','cat1','cat1','cat1','cat2'],
        'values': [1,2,3,1,2,3,1,2,3,5,1]}
my_data = DataFrame(data)
my_data.groupby('Category').mean()

Category:     values:   
cat1     2.666667
cat2     1.600000

このようにフォーマットされたデータがたくさんあるので、 cat1cat2の平均が統計的に異なるかどうかを確認するためにT検定を実行する必要があります。どうやってやるの?

4

3 に答える 3

105

実行する t 検定の種類 (片側または両側の従属または独立) によって異なりますが、次のように単純にする必要があります。

from scipy.stats import ttest_ind

cat1 = my_data[my_data['Category']=='cat1']
cat2 = my_data[my_data['Category']=='cat2']

ttest_ind(cat1['values'], cat2['values'])
>>> (1.4927289925706944, 0.16970867501294376)

t統計とp値のタプルを返します

他の t 検定については、こちらを参照してくださいhttp://docs.scipy.org/doc/scipy/reference/stats.html

于 2012-11-16T09:34:21.770 に答える