R语言的xtabs函数实例讲解
更新时间:2021年5月6日 13:51 点击:1523
今天在做一个列联表独立性检验的时候,总是无法处理好要求的数据类型,偶然的机会,看到了xtabs()函数,感觉很适合用来做列联表,适合将一列数据转换成列联表。
shifou <- c("yes","yes","no","no") xinbie <- c("nan","nv","nan","nv") freq <- c(34,38,28,50) (exer6_2 <- data.frame(shifou,xinbie,freq)) (count22 <- xtabs(freq~.,data = exer6_2))#这个点表示shifou + xinbie,这个和lm()用法差不多 assocstats(count22)
运行过程与结果如下:
> shifou <- c("yes","yes","no","no")#是否逃课 > xinbie <- c("nan","nv","nan","nv")#性别 > freq <- c(34,38,28,50) > (exer6_2 <- data.frame(shifou,xinbie,freq))#“nan”表示男,“nv”表示女,yes表示逃课,no表示不逃课 shifou xinbie freq 1 yes nan 34 2 yes nv 38 3 no nan 28 4 no nv 50 > (count22 <- xtabs(freq~.,data = exer6_2))#这个数据表示性别与性别是否有关 xinbie shifou nan nv no 28 50 yes 34 38 > assocstats(count22) X^2 df P(> X^2) Likelihood Ratio 1.9830 1 0.15908 Pearson 1.9802 1 0.15937<br>#这个p值为0.15937大于0.05,表示与性别没有关系 Phi-Coefficient : 0.115 Contingency Coeff.: 0.114 Cramer's V : 0.115
接下来,创建一个更加难的数据集
(价格 <- rep(c("10万以下","10~20万","20~30万","30万以上"),each = 3)) (地区 <- rep(c("东部","中部","西部"),each = 1,times = 4)) (数量 <- c(20,40,40,50,60,50,30,20,20,40,20,10)) (销售情况 <- data.frame(价格,地区,数量)) (count2 <- xtabs(数量 ~ (价格 + 地区),data = 销售情况))
运算过程:
> (价格 <- rep(c("10万以下","10~20万","20~30万","30万以上"),each = 3)) [1] "10万以下" "10万以下" "10万以下" "10~20万" "10~20万" "10~20万" "20~30万" [8] "20~30万" "20~30万" "30万以上" "30万以上" "30万以上" > (地区 <- rep(c("东部","中部","西部"),each = 1,times = 4)) [1] "东部" "中部" "西部" "东部" "中部" "西部" "东部" "中部" "西部" "东部" "中部" [12] "西部" > (数量 <- c(20,40,40,50,60,50,30,20,20,40,20,10)) [1] 20 40 40 50 60 50 30 20 20 40 20 10 > (销售情况 <- data.frame(价格,地区,数量)) 价格 地区 数量 1 10万以下 东部 20 2 10万以下 中部 40 3 10万以下 西部 40 4 10~20万 东部 50 5 10~20万 中部 60 6 10~20万 西部 50 7 20~30万 东部 30 8 20~30万 中部 20 9 20~30万 西部 20 10 30万以上 东部 40 11 30万以上 中部 20 12 30万以上 西部 10 > (count2 <- xtabs(数量 ~ (价格 + 地区),data = 销售情况)) 地区 价格 东部 西部 中部 10~20万 50 50 60 10万以下 20 40 40 20~30万 30 20 20 30万以上 40 10 20
可以看出这个count2也构成了这个列联表的形式,接下来,使用chisq.test()函数便可进行卡方检验
> chisq.test(count2) Pearson's Chi-squared test data: count2 X-squared = 29.991, df = 6, p-value = 3.946e-05
到此这篇关于R语言的xtabs函数实例讲解的文章就介绍到这了,更多相关R语言的xtabs函数内容请搜索猪先飞以前的文章或继续浏览下面的相关文章希望大家以后多多支持猪先飞!
上一篇: 如何改变R语言默认存储包的路径
下一篇: R语言“循环”知识点详解
相关文章
- 这篇文章主要介绍了R语言作图:坐标轴的设置方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 这篇文章主要介绍了R语言删除指定变量或对象的操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 这篇文章主要介绍了R语言基本画图函数与多图多线的用法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 这篇文章主要介绍了R语言-将list转换为向量的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 这篇文章主要介绍了R语言-切换科学计数法和更换小数点位数的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 这篇文章主要介绍了R语言创建矩阵的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-05-06
- 在本篇文章里小编给大家分享了一篇关于R语言运算符知识点讲解内容,有兴趣的朋友们可以参考下。...2021-05-06
- 这篇文章主要介绍了R语言中的因子类型详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 这篇文章主要介绍了R语言-使用快捷键快速注释的实现方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 这篇文章主要介绍了R语言中quantile()函数的用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 这篇文章主要介绍了改变R语言默认存储包的路径操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 这篇文章主要给大家总结介绍了R语言导入导出数据的几种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-05-06
R语言 install.packages 无法读取索引的解决方案
这篇文章主要介绍了R语言 install.packages 无法读取索引的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06- 在本篇文章里小编给大家分享的是一篇关于R语言“包”的知识点总结内容,有兴趣的朋友们可以学习下。...2021-05-06
- 这篇文章主要给大家介绍了关于R语言逻辑回归、ROC曲线与十折交叉验证的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-05-06
- 这篇文章主要为大家详细介绍了R语言学习ggplot2绘制统计图形包的全面知识讲解,有需要的朋友可以借鉴参考下,希望能够有所帮助...2021-11-06
- 在本篇文章里小编给大家整理的是一篇关于R语言关于随机森林算法的知识点详解内容,有兴趣的朋友们可以跟着学习下。...2021-05-13
- 这篇文章主要介绍了R语言-t分布正态分布分位数图的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 这篇文章主要介绍了R语言-在一张图上显示多条线的实现,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 这篇文章主要介绍了R语言开发之CSV文件的读写操作实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-05-06