R--相关分布函数、统计函数的使用
分布函数家族: *func()
r : 随机分布函数
d : 概率密度函数
p : 累积分布函数
q : 分位数函数
func()表示具体的名称如下表:
例子
#r : 随机分布函数
#d : 概率密度函数
#p : 累积分布函数
#q : 分位数函数 #生成符合二项分布的数据
# 二项分布
# X~(N,P)
str(rbinom) x<-rbinom(,,0.5) #做1次试验,假设正面概率为0.5,进行5次观察,每1次试验中正面出现的次数为别为 0 0 1 1 0
x<-rbinom(,,0.5) #做10次试验,假设正面概率为0.5,进行5次观察,每10次试验中正面出现的次数分别为 4 4 7 6 6 x
plot(x) #概率密度函数
y<-dbinom(,,0.5) #做100次试验,假设正面概率为0.5,正面出现的次数为50次的概率是 0.01084387
y<-dbinom(:,,0.5) ##做100次试验,假设正面概率为0.5,正面出现的次数分别为40到50的概率分别为: 0.01084387... sum(y) #累计概率 y<-dbinom(:,,0.5) plot(y) #概率密度曲线
plot(:,y,pch=) #概率密度曲线 #累计概率
z<-pbinom(,,0.5) #累计概率 小于等于50的概率为0.5397946
z<-dbinom(:,,0.5)
sum(z) plot(pbinom(:,,0.5)) #分为点
q = qbinom(0.5,,0.5) #在0.5分为点的数值为
q
单变量统计函数
均值:mean
中位数:median
分位数:quantile
方差:var
标准差:sd
频数表:table
偏度: Sk=sum((x[!is.na(x)]-Av)^3/Sd^3)/N #偏度
<0 左偏 >0 右偏
峰度: Ku=sum((x[!is.na(x)]-Av)^4/Sd^4)/N-3 #峰度
<3 坡度缓 >3 坡度陡
#单变量的描述统计 str(airquality) #R自带的空气质量数据集 str 结构structure的缩写 summary(airquality) #汇总数据包括 最小值、分位数、平均数、中位数、最大值、缺失值(NA's) #平均值
mean(airquality$Ozone, na.rm = T) #na.rm=T 对缺失值进行删除,存在缺失值,结果为NA
mean(airquality$Temp, na.rm = T, trim = .) #trim=.01 按百分比去掉头尾的数,删除极值 #中位数
median(airquality$Ozone, na.rm = T) #加权平均数
temp100 <- rnorm(,,) #通过正态分布生成100个随机数,平均值为30 w <- : #生成每个值的权重值 wmt = weighted.mean(temp100,w,na.rm = T) #进行加权平均计算
mt = mean(temp100,na.rm = T) #几何平均数
x<- c(., ., ., .) xm = mean(x) xg = exp(mean(log(x)))#exp指数 log对数 #中位数
median(temp100,na.rm = T) #分位数
quantile(airquality$Temp, na.rm = T)
# 0% 25% 50% 75% 100% 50%中位数 0%最小值 25%上四分位数
# 56 72 79 85 97 quantile(airquality$Temp, na.rm = T, probs = c(,0.1,0.9,)) #通过probs自定义分位点 #方差
var(temp100) #标准差
ts <- sd(temp100)
ts^ #标准差的平方等于方差 #峰度和偏度
mysummary = function(x,...){
Av=mean(x,na.rm = T)
Sd=sd(x,na.rm = T)
N=length(x[!is.na(x)])
Sk=sum((x[!is.na(x)]-Av)^/Sd^)/N #偏度
Ku=sum((x[!is.na(x)]-Av)^/Sd^)/N- #峰度 result=c(argv=Av, sd=Sd, skew=Sk, kurt=Ku)
return (result)
}
mysummary(temp100)
# argv sd skew kurt
#30.109613023 1.033804058 -0.008489863 -0.597720454 #通过apply进行提交
apply(airquality[,c(-,-)],,FUN=mysummary)
#Ozone Solar.R Wind Temp
#argv 42.129310 185.9315068 9.95751634 77.8823529
#sd 32.987885 90.0584222 3.52300135 9.4652697
#skew 1.209866 -0.4192893 0.34102753 -0.3705073
#kurt 1.112243 -1.0040581 0.02886468 -0.4628929
非单封分布:
#非单峰分布不能简单计算均值 x=rnorm(,,)
y=rnorm(,,) z=c(x,y) plot(density(z)) #使用密度曲线画图 abline(v=mean(z),col=,lw=)
双变量函数
协方差:cov
相关系数:cor 通过相关系数计算相关性
缺失值处理:行删除、配对删除等
#协方差
cov(airquality[,-:-],use = 'complete.obs') #行删除,处理缺失值
cov(airquality[,-:-],use = 'pairwise.complete.obs') #配对删除,处理缺失值 #相关系数
cor(airquality[,-:-],use = 'complete.obs') #行删除
cor(airquality[,-:-],use = 'pairwise.complete.obs') #配对删除
#结果为对称矩阵
R--相关分布函数、统计函数的使用的更多相关文章
- R语言︱分布函数与概率密度+随机数产生
1.常见概率分布 ##正态分布 pnorm(1.96) #P(x<=1.96)时的分布概率 pnorm(1.96,0,1) #上同 pnorm(1.96,lower.tail = F) #P(x ...
- R概率分布函数使用小结
记要 今天在计算分类模型自行区间时,用到了R中正太分布的qnorm函数,这里做简单记要,作为备忘. R中自带了很多概率分布的函数,如正太分布,二次分布,卡放分布,t分布等,这些分布的函数都有一个共性, ...
- 【R】函数-统计函数
- 【翻译】Awesome R资源大全中文版来了,全球最火的R工具包一网打尽,超过300+工具,还在等什么?
0.前言 虽然很早就知道R被微软收购,也很早知道R在统计分析处理方面很强大,开始一直没有行动过...直到 直到12月初在微软技术大会,看到我软的工程师演示R的使用,我就震惊了,然后最近在网上到处了解和 ...
- R统计分析处理
[翻译]Awesome R资源大全中文版来了,全球最火的R工具包一网打尽,超过300+工具,还在等什么? 阅读目录 0.前言 1.集成开发环境 2.语法 3.数据操作 4.图形显示 5.HTML部件 ...
- 数据分析R语言1
数据分析R语言 无意中发现网上的一个数据分析R应用教程,看了几集感觉还不错,本文做一个学习笔记(知识点来源:视频内容+R实战+自己的理解),视频详细的信息请参考http://www.itao521.c ...
- R工具包一网打尽
这里有很多非常不错的R包和工具. 该想法来自于awesome-machine-learning. 这里是包的导航清单,看起来更方便 >>>导航清单 通过这些翻译了解这些工具包,以后干 ...
- R工具包
直到12月初在微软技术大会,看到我软的工程师演示R的使用,我就震惊了,然后最近在网上到处了解和爬一些R的资料,看着看着就入迷了,这就是个大宝库了,以前怎么没发现,看来还是太狭隘了.直到前几天我看到这个 ...
- 数据分析R语言(1)
无意中发现网上的一个数据分析R应用教程,看了几集感觉还不错,本文做一个学习笔记(知识点来源:视频内容+R实战+自己的理解),视频详细的信息请参考http://www.itao521.com/cours ...
随机推荐
- CentOS6.8 MySQL 5.6实现主从复制
主库操作 1.将mysqldump命令添加到/usr/bin中 ln -s /application/mysql/bin/mysqldump /usr/bin/ 2.开启master上的log-bin ...
- HTTP Status 404 - /chp-adapter-web/ 问题解决
启动tomcat中是报404,后来发现是同事把web.xml删除了,加上后,正常访问!
- 为重负网络优化 Nginx 和 Node.js --引用自https://linux.cn/article-1314-1.html
为重负网络优化 Nginx 和 Node.js 在搭建高吞吐量web应用这个议题上,NginX和Node.js可谓是天生一对.他们都是基于事件驱动模型而设计,可以轻易突破Apache等传统web服务器 ...
- LeetCode "Design Tic-Tac-Toe"
We don't have to keep a complete chess board.. just counters! class TicTacToe { vector<int> cn ...
- jboss端口说明
http://blog.csdn.net/yangbobo1992/article/details/8876587 jboss端口修改说明 1. jboss 的端口修改位置总结 Jboss通常占用的端 ...
- python--ulipad控制台中文输出乱码
ulipad用起来顺手,而不尽人意的地方时,它不能正确输出中文.而且有人指出这和文件的编码没关系,所以将”设置“选项里”缺省文档编码“修改为”utf-8“也无济于事.为了解决这个问题,我在网上搜了搜, ...
- mysql高效分页方案及原理
很久以前的一次面试中,被面试官问到这个问题,由于平时用到的分页方法不多,只从索引.分表.使用子查询精准定位偏移以外,没有使用到其它方法. 后来在看其它博客看到了一些不同的方案,也一直没有整理.今天有时 ...
- Wampserver2.5配置虚拟主机出现403 Forbidden解决办法
一直在用APMServ5.2.6,mysql好办,可以用mariadb代替进行升级,但php升级到5.4.7就没办法再升级,安装加速器也困难.就想迁移到Wampserver上来,以前也尝试过Wamps ...
- csv文件批量导入数据到sqlite。
csv文件批量导入数据到sqlite. 代码: f = web.input(bs_switch = {}) # bs_switch 为from表单file字段的namedata =[i.split( ...
- appium+python:自己写的一个滑动控件的方式
#调用方式roll_ele("ID","ele_id","7","up",3)#将控件分为7格,从底部倒数第二格向上滑动 ...