t 按性别测试用户的总播放次数 - python
t testing total plays of users by gender - python
我想通过他们的总播放量来评估男性和女性用户组的统计差异(见下面的例子):
女性条目示例
female
users artist plays gender age
0 48591 sting 12763 f 25.0
1 48591 stars 8192 f 25.0
每位女性用户的总播放次数
female_user_plays = female.groupby('users').plays.sum()
female_user_plays
users
5 5479
6 3782
7 7521
11 7160
男性条目示例
female
users artist plays gender age
51 56496 iron maiden 456 m 28.0
52 56496 elle 407 m 28.0
每个唯一男性用户的总播放次数
male_user_plays = male.groupby('users').plays.sum()
male_user_plays
users
0 3282
1 25329
2 51522
3 1590
每个性别的平均播放次数
Average Total Male Plays: 11880
Average Total Female Plays: 13104
在尝试 t 检验之前,我将每个 Series 转换为值列表:
female_plays_list = female_user_plays.values.tolist()
male_plays_list = male_user_plays.values.tolist()
对于 t 检验:
ttest_ind(female_plays_list, male_plays_list, equal_var=False)
结果让我感到困惑,因为输出看起来很不正常,我认为这不是由于两个样本大小的差异....
Ttest_indResult(statistic=-8.9617251652001002, pvalue=3.3195063228833119e-19)
是否有任何超出数组长度的原因可能导致此问题?
对 0-10000 之间的 100000000 个随机整数值的两个数组进行测试给出以下结果:
In []: try1 = np.random.randint(1, 10000, 100000000)
In []: try2 = np.random.randint(1, 10000, 100000000)
In []: ttest_ind(try1, try2, equal_var=False)
Out[]: Ttest_indResult(statistic=-0.67549204672468233, pvalue=0.49936320345035146)
并且长度不等给出以下内容:
In []: try1 = np.random.randint(1, 10000, 1000000)
In []: ttest_ind(try1, try2, equal_var=False)
Out[]: Ttest_indResult(statistic=-0.39754328321364363, pvalue=0.6909669583715552)
所以除非我在测试中忽略了一个洞察力或者你的数组更长,否则它必须是数组的特定值。
我想通过他们的总播放量来评估男性和女性用户组的统计差异(见下面的例子):
女性条目示例
female
users artist plays gender age
0 48591 sting 12763 f 25.0
1 48591 stars 8192 f 25.0
每位女性用户的总播放次数
female_user_plays = female.groupby('users').plays.sum()
female_user_plays
users
5 5479
6 3782
7 7521
11 7160
男性条目示例
female
users artist plays gender age
51 56496 iron maiden 456 m 28.0
52 56496 elle 407 m 28.0
每个唯一男性用户的总播放次数
male_user_plays = male.groupby('users').plays.sum()
male_user_plays
users
0 3282
1 25329
2 51522
3 1590
每个性别的平均播放次数
Average Total Male Plays: 11880
Average Total Female Plays: 13104
在尝试 t 检验之前,我将每个 Series 转换为值列表:
female_plays_list = female_user_plays.values.tolist()
male_plays_list = male_user_plays.values.tolist()
对于 t 检验:
ttest_ind(female_plays_list, male_plays_list, equal_var=False)
结果让我感到困惑,因为输出看起来很不正常,我认为这不是由于两个样本大小的差异....
Ttest_indResult(statistic=-8.9617251652001002, pvalue=3.3195063228833119e-19)
是否有任何超出数组长度的原因可能导致此问题?
对 0-10000 之间的 100000000 个随机整数值的两个数组进行测试给出以下结果:
In []: try1 = np.random.randint(1, 10000, 100000000)
In []: try2 = np.random.randint(1, 10000, 100000000)
In []: ttest_ind(try1, try2, equal_var=False)
Out[]: Ttest_indResult(statistic=-0.67549204672468233, pvalue=0.49936320345035146)
并且长度不等给出以下内容:
In []: try1 = np.random.randint(1, 10000, 1000000)
In []: ttest_ind(try1, try2, equal_var=False)
Out[]: Ttest_indResult(statistic=-0.39754328321364363, pvalue=0.6909669583715552)
所以除非我在测试中忽略了一个洞察力或者你的数组更长,否则它必须是数组的特定值。