R语言的两个C指数怎么比较,R语言自定义相同指标内多组数据对比:单因素方差分析函数...

自定义相同指标内多组数据对比:单因素方差分析函数

注意:无论以哪种形式作为数据输入,符号~右边表示分类变量,符合左边表示因变量,即要研究的指标数据

aov.func

+ error

+ data[,1]

+ group.levels

+ for(i in group.levels){

+ if(shapiro.test(data[which(data[,1]==i),2])$p.value

#验证不同水平下的指标是否服从正态分布,只要有一组不服从正态分布,就带引第i组不服从正态分布

+ error

+ }

+ }

+ if(error){

+ return()

+ }

+ else{

+ print("符合正态性前提")

+ }

+ #检验不同水平下指标的方差齐次性

+ if(bartlett.test(data[,2]~data[,1])$p.value

+ print("ERROR:符合方差齐次性前提")

+ }

#验证不同水平下指标数据的方差是否相同,如果p-value大于alpha表示服从,小于则表示不服从

+ #绘制箱线图

+ if(plot.logic){

+ boxplot(data[,2]~data[,1])

+ }

+ #方差分析

+ sol

+ p.value

+ tab

+ dimnames(tab)

+ tab[1:2,1]

+ tab[1:2,2]

+ tab[1:2,3]

+ tab[1:2,4]

+ tab[1,5]

+ print("====方差分析====")

+ print(tab)

+ #多重T检验

+ if(p.value

+ print(paste(p.value,"

+ sol.t

+ tab

+ tab[which((sol.t[[3]]>alpha)==TRUE)]

+ tab[which((sol.t[[3]]>alpha)==FALSE)]

+ print("====多重T检验====")

+ print(tab)

+ }

+ else{

+ print(paste(p.value,">",alpha,":个水平下的指标无明显差别"))

+

+ }

+ return(sol)

+ }

> 自定义函数aov.func的参数说明:

data:可以是matrix或data.frame两种对象,第一列表示不同水平下的取值,第二列是对应的指标数据,例如:kpi

data

Alpha表示显著性水平,默认为0.05

Plot.logic如果去T默认,时绘制data的箱线图,如果去F时不进行绘图。

P.adjust.mod设置在左多重T检验时,修正p-value的值。

例:数据为某电商2个年龄段的日客单价数据。

>  price1

>price2

> date

> price

> data

> data

group   x

1      1  79

2      1  79

3      1  87

4      1  79

5      1  71

6      1  84

7      1  82

8      1  82

9      1  85

10     1  82

11     1  88

12     1  81

13     1  71

14     1  76

15     1  81

16     1  75

17     1  72

18     1  83

19     1  76

20     2 193

21     2 192

22     2 191

23     2 181

24     2 191

25     2 192

26     2 187

27     2 191

28     2 196

29     2 196

30     2 196

31     2 196

32     2 192

33     2 194

34     2 192

35     2 189

36     2 196

37     2 202

38     2 197

39     2 206

40     2 199

41     2 191

42     2 194

43     2 195

44     2 196

> sol

[1] "符合正态性前提"

[1] "====方差分析===="

自由度 差异平方和         均方  统计量F      P-value

分类变量A       1 140712.579 140712.57895 5780.327 1.289547e-46

随机性误差     42   1022.421     24.34336       NA           NA

总和           43 141735.000           NA       NA           NA

[1] "1.28954695480505e-46 < 0.05 :各水平下的指标有明显差别"

[1] "====多重T检验===="

1

2 "显著差别"

>

a0354a44ca53bc1f4e9e331c3195de6e.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值