python笔记:7.2.1.1方差同质性检验(例7-1像素影响数码相机销量)

 

# -*- coding: utf-8 -*-
"""
Created on Mon Jun 24 11:00:09 2019@author: User
"""# 《Python数据分析基础》中国统计出版社import numpy as np
from scipy import stats
import pandas as pd
import statsmodels.api as sm
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
myfont=FontProperties(fname='data\msyh.ttc')dc_sales = pd.read_csv(u'data\\ch7\\dc_sales.csv',encoding = "gbk")
print(dc_sales.head())dc_sales['pixel'] = dc_sales['pixel'].astype('category')
dc_sales['pixel'].cat.categories=['500万像素及以下','500-600万像素','600-800万像素','800-1000万像素','1000万像素及以上']
#dc_sales['pixel'].cat.set_categories=['500万像素及以下','500-600万像素',
#        '600-800万像素','800-1000万像素',
#        '1000万像素及以上']
print(dc_sales.head())print(pd.pivot_table(dc_sales,index=['pixel'],columns=['market'],values=['sales'],aggfunc='sum'))G=dc_sales['pixel'].unique()    #G用于统计变量pixel的像素属性
args=[]                         #列表args用于存储不同像素属性下的销售数据
for i in list(G):args.append(dc_sales[dc_sales['pixel']==i]['sales'])print(args)print("\n 对于一元方差分析常用Levene's检验:")
print(stats.levene(*args))

运行:

   market  pixel  sales
0       1      1     70
1       1      2    101
2       1      3    114
3       1      4    120
4       1      5    132
   market        pixel  sales
0       1    500万像素及以下     70
1       1   500-600万像素    101
2       1   600-800万像素    114
3       1  800-1000万像素    120
4       1   1000万像素及以上    132
            sales                                   
market          1    2    3    4    5    6    7    8
pixel                                               
500万像素及以下      70   67   82   87   80   80   87   96
500-600万像素    101   76   97   88   92   99  123   90
600-800万像素    114   96  128  103  107   91   99  119
800-1000万像素   120   98  132  128  132  132  131  119
1000万像素及以上    132  102  123  119  123  135  126  117
[0     70
5     67
10    82
15    87
20    80
25    80
30    87
35    96
Name: sales, dtype: int64, 1     101
6      76
11     97
16     88
21     92
26     99
31    123
36     90
Name: sales, dtype: int64, 2     114
7      96
12    128
17    103
22    107
27     91
32     99
37    119
Name: sales, dtype: int64, 3     120
8      98
13    132
18    128
23    132
28    132
33    131
38    119
Name: sales, dtype: int64, 4     132
9     102
14    123
19    119
24    123
29    135
34    126
39    117
Name: sales, dtype: int64]

 对于一元方差分析常用Levene's检验:
LeveneResult(statistic=0.233384556281214, pvalue=0.9176929576341715)
 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部