[R语言统计]频数表
频数表在统计学中是一个非常基本并且重要的概念,我们这里就来讲解它的基本用法。
首先我们需要载入数据,并查看数据的基本信息
- install.packages('vcd') #安装vcd包,其中有可以利用的数据Arthritis
- library(vcd)
- 载入需要的程辑包:grid
- > head(Arthritis)#################################################
- ID Treatment Sex Age Improved
- 1 57 Treated Male 27 Some
- 2 46 Treated Male 29 None
- 3 77 Treated Male 30 None
- 4 17 Treated Male 32 Marked
- 5 36 Treated Male 46 Marked
- 6 23 Treated Male 58 Marked
- > class(Arthritis)################################################
- [1] "data.frame"
- > summary(Arthritis)##############################################
- ID Treatment Sex Age Improved
- Min. : 1.00 Placebo:43 Female:59 Min. :23.00 None :42
- 1st Qu.:21.75 Treated:41 Male :25 1st Qu.:46.00 Some :14
- Median :42.50 Median :57.00 Marked:28
- Mean :42.50 Mean :53.36
- 3rd Qu.:63.25 3rd Qu.:63.00
- Max. :84.00 Max. :74.00
从结果中看以看出,Arthritis是一个data.frame结构的数据。其中ID和Age是numeric型的数据,其他三个都是factor型的数据。
创建一维列联表
- > a<-table(Arthritis$Improved)#创建一维列联表
- > class(a) #查看变量a的类型
- [1] "table"
- > a
- None Some Marked
- 42 14 28
从结果中可以看出,就是如下的表格
None | Some | Marked |
42 | 14 | 28 |
创建二维列联表
- > b<-table(Arthritis$Sex,Arthritis$Improved)
- > class(b)
- [1] "table"
- > b
- None Some Marked
- Female 25 12 22
- Male 17 2 6
结果是如下表格
None | Some | Marked | |
Female | 25 | 12 | 22 |
Male | 17 | 2 | 6 |
我们还可以将一维列联表a和二维列联表b转化成百分比的形式
- > prop.table(a)
- None Some Marked
- 0.5000000 0.1666667 0.3333333
- > prop.table(b)
- None Some Marked
- Female 0.29761905 0.14285714 0.26190476
- Male 0.20238095 0.02380952 0.07142857
给table添加边际和
- > addmargins(a)####################################
- None Some Marked Sum
- 42 14 28 84
- > addmargins(b)####################################
- None Some Marked Sum
- Female 25 12 22 59
- Male 17 2 6 25
- Sum 42 14 28 84
- > addmargins(prop.table(a))#########################
- None Some Marked Sum
- 0.5000000 0.1666667 0.3333333 1.0000000
- > addmargins(prop.table(b))#########################
- None Some Marked Sum
- Female 0.29761905 0.14285714 0.26190476 0.70238095
- Male 0.20238095 0.02380952 0.07142857 0.29761905
- Sum 0.50000000 0.16666667 0.33333333 1.00000000
只添加某个部分边际和
- > addmargins(prop.table(b),1)
- None Some Marked
- Female 0.29761905 0.14285714 0.26190476
- Male 0.20238095 0.02380952 0.07142857
- Sum 0.50000000 0.16666667 0.33333333
- > addmargins(prop.table(b),2)
- None Some Marked Sum
- Female 0.29761905 0.14285714 0.26190476 0.70238095
- Male 0.20238095 0.02380952 0.07142857 0.29761905
[R语言统计]频数表的更多相关文章
- 通过R语言统计考研英语(二)单词出现频率
通过R语言统计考研英语(二)单词出现频率 大家对英语考试并不陌生,首先是背单词,就是所谓的高频词汇.厚厚的一本单词,真的看的头大.最近结合自己刚学的R语言,为年底的考研做准备,想统计一下最近考研英语( ...
- R语言统计学习-1简介
一. 统计学习概述 统计学习是指一组用于理解数据和建模的工具集.这些工具可分为有监督或无监督.1.监督学习:用于根据一个或多个输入预测或估计输出.常用于商业.医学.天体物理学和公共政策等领域.2.无监 ...
- R语言—统计结果输出至本地文件方法总结
1.sink()在代码开始前加一行:sink(“output.txt”),就会自动把结果全部输出到工作文件夹下的output.txt文本文档.这时在R控制台的输出窗口中是看不到输出结果的.代码结束时用 ...
- R语言统计词频 画词云
原始数据: 程序: #统计词频 library(wordcloud) # F:/master2017/ch4/weibo170.cut.txt text <- readLines("F ...
- R语言统计字符串的字符数ncahr函数
函数计算字符数量,包括在一个字符串的空格的个数. 语法 nchar()函数的基本语法是: nchar(x) 以下是所使用的参数的说明: x - 向量输入. 示例 result <- nchar( ...
- R语言-简单线性回归图-方法
目标:利用R语言统计描绘50组实验对比结果 第一步:导入.csv文件 X <- read.table("D:abc11.csv",header = TRUE, sep = & ...
- 手把手教你学习R语言
本文为带大家了解R语言以及分段式的步骤教程! 人们学习R语言时普遍存在缺乏系统学习方法的问题.学习者不知道从哪开始,如何进行,选择什么学习资源.虽然网络上有许多不错的免费学习资源,然而它们多过了头,反 ...
- 【转】R语言知识体系概览
摘要:R语言的知识体系并非语法这么简单,如果都不了R的全貌,何谈学好R语言呢.本文将展示介绍R语言的知识体系结构,并告诉读者如何才能高效地学习R语言. 最近遇到很多的程序员都想转行到数据分析,于是就开 ...
- R语言学习(一)前言
本系列文章由 @YhL_Leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/49768161 R是一个有着统计分析功能 ...
随机推荐
- 工作总结 public DateTime? CollectionTime 可空类型 Code First
数据库生成就对应生成 可以为空 的字段
- api 和 C# 里的接口的区别?
从狭义上讲,接口指的是借由 interface 定义的结构,接口中只对方法做定义,不做实现.具体实现由最终实现接口的类提供. interface 作为一种类型,可以用于定义方法,我们只关心类实现了接口 ...
- Linux内核(14) - 二分法与printk
人生就是一个茶几,上面摆满了杯具.内核也是一个大茶几,不过它上面的杯具是一个个的bug.确定bug什么时候被引入是一个很关键的步骤,在这个定位bug的过程中,不论有意或无意,都会很自然地用到二分查找的 ...
- kubernetes 二
部署harbor Habor是由VMWare中国团队开源的容器镜像仓库.事实上,Habor是在Docker Registry上进行了相应的企业级扩展,从而获 得了更加广泛的应用,这些新的企业级特性包括 ...
- windows live writer 2012 0x80070643
折腾了两天,windows live writer 安装不成功,最后放弃了,发现一个叫做菊子曰的软件,但是免费版本的,发图片有限制,感觉非常不爽.windows live writer报错如下 ...
- 数据库分享一: MySQL的Innodb缓存相关优化
无论是对于哪一种数据库来说,缓存技术都是提高数据库性能的关键技术,物理磁盘的访问速度永 远都会与内存的访问速度永远都不是一个数量级的.通过缓存技术无论是在读还是写方面都可以大大提 高数据库整体性能. ...
- Redis监控技巧总结
Redis 监控最直接的方法当然就是使用系统提供的 info 命令来做了,你只需要执行下面一条命令,就能获得 Redis 系统的状态报告. redis-cli info 内存使用 如果 Redis 使 ...
- Java:多线程,线程同步,synchronized关键字的用法(同步代码块、非静态同步方法、静态同步方法)
关于线程的同步,可以使用synchronized关键字,或者是使用JDK 5中提供的java.util.concurrent.lock包中的Lock对象.本文探讨synchronized关键字. sy ...
- find 命令查找文件大小为xx的文件
K:字节 G:gb 查找当前目录及子目录下大于1G的文件: # find ./ -size +1G -exec ls -lh {} \; 查找当前目录及子目录下大于1G小于20G的文件: # find ...
- python(31) enumerate 的用法
例子一: b = "abcd" kv_dict = {} pre = 1234 for i, v in enumerate(b): kv_dict['%s-%d.jpg' %(pr ...