首页 > 解决方案 > 定量数据集的意义测试(Python Pandas)

问题描述

df假设我有以下数据框conv_rate = sales / visits

      theme      visits   sales   conv_rate
0     brazil        34        2        5.9%
1     argentina     18        3       16.7%
2     spain        135       15       11.1%
3     uk            71        6        8.5%
4     france        80        4        5.0%
5     iceland       26        1        3.8%
6     chile        104       11       10.6%
7     italy         47        5       10.6%

# Total visits = 515
# Total sales = 47
# Mean conversion rate = 9.1%

我想测试哪些国家的转化率与人口平均值的转化率显着不同(零假设 = 转化率没有差异)。

什么测试最适合这里?我相信我需要一个双尾检验,因为样本转换率可能高于或低于总体平均值。但是我不确定t 检验z 检验是否最合适。

根据我的阅读,z 检验最适合大样本量 (n>30),而 t 检验最适合小样本量 (n<30)。这个对吗?由于我的一些样本(例如西班牙)的样本量比其他样本(例如阿根廷)大,我如何确定哪种测试最适合?我希望在所有行(样本)上运行相同的测试。

我在这里要做的是查看哪些国家/地区的转化率与零假设“显着不同”。我想使用显着性检验来计算每个国家/地区的“检验值”(例如下面),然后将该值与阈值进行比较,以确定该国家/地区是否具有只能通过 5% 来解释的转化率,1 %,占人口的 0.1%(因此,我非常相信转化率的差异是“显着的”,而不是偶然的)。

      theme      visits   sales   conv_rate     value
0     brazil        34        2        5.9%      1.57
1     argentina     18        3       16.7%      4.51
2     spain        135       15       11.1%      3.06
3     uk            71        6        8.5%      2.57
4     france        80        4        5.0%      1.88
5     iceland       26        1        3.8%      1.28
6     chile        104       11       10.6%      3.23
7     italy         47        5       10.6%      2.94

什么测试最适合这个目的?我可以构建测试pandas还是应该使用scipy

标签: pythonpandasscipystatisticsdata-analysis

解决方案


您可以使用二项式检验,将转化视为“销售额”,将访问次数视为“试验”,平均成功率是您的平均销售额/平均访问次数:

import pandas as pd
from scipy.stats import binom_test
p = df.sales.sum()/df.visits.sum()
df['p_binom'] = df.apply(lambda x: binom_test(x[2],x[1],p=p),axis=1)
df

    theme   visits  sales   conv_rate   p_binom
0   brazil  34  2   5.9%    0.765868
1   argentina   18  3   16.7%   0.222923
2   spain   135 15  11.1%   0.452636
3   uk  71  6   8.5%    1.000000
4   france  80  4   5.0%    0.245689
5   iceland 26  1   3.8%    0.508992
6   chile   104 11  10.6%   0.607580
7   italy   47  5   10.6%   0.615161

推荐阅读