前一段时间请教过R分组进行统计分析假设检验的问题,后来得到大家的帮助,今天发现个新问题,拿出来跟大家讨论请教:
假设s为数据框,dim(s)=4009,77,s其中包含(不仅仅)"ntsr"(总成绩),“nth”(总成绩是否通过,通过为1,不通过为0),“intru”(培训前后,1为培训前,2为培训后),“profc”(职业1,2,3,4,5类),我现在想分析:1。各职业人群在培训前后总成绩是否有变化;2.各职业人群在培训前后总成绩是否通过比例是否有变化
对于1,我的方法是:
by(s,profc,function(s)wilcox.test(ntsr~intru,data=s)) #经检验成绩不符合正态分布,所以用秩和检验
结果与spss分析结果对照,一致,说明上述方法是正确有效的
对于2,考虑是0,1变量,intru也是二分类变量,故可以用卡方检验,于是我参照上面方法写了如下方式:
by(s,profc,function(s)chisq.test(nth, intru,data=s))
R提示我:错误于chisq.test(nth, intru, data = x) : 参数没有用(data = s)
然后我改为
by(s,profc,function(s)chisq.test(nth,intru))
结果倒是出来了,结果5类职业统计的卡方值和p值都一样,都是不分组”chisq.test(nth~intru)) “的结果
又花了好长时间,变化了好多方式也不能达到目的,所以请教高手,错误出在哪里?先谢谢了!


雷达卡



京公网安备 11010802022788号







