R与数据分析旧笔记(五)数学分析基本
R语言的各种分布函数
rnorm(n,mean=0,sd=1)#高斯(正态) rexp(n,rate=1)#指数 rgamma(n,shape,scale=1)#γ分布 rpois(n,lambda)#Poisson分布 rweibull(n,location=0,scale=1)#Weibull分布 rcauchy(n,location=0,scale=1)#Cauchy分布 rbeta(n,shape1,shape2)#β分布 rt(n,df)#t分布 rf(n,df1,df2)#F分布 rchisq(n,df)#卡方分布 rbinom(n,size,prob)#二项 rgeom(n,prob)#几何 rhyper(nn,m,n,k)#超几何 rlogis(n,location=0,scale=1)#logistic分布 rlnorm(n,meanlog=0,sdlog=1)#对数正态 rnbinom(n,size,prob)#负二项分布 runif(n,min=0,max=1)#均匀分布 rwilcox(nn,m,n).rsignrank(nn,n)#Wilcoxon分布 中位数median() 百分位数quantile() 五数总括fivenum() 协方差cov() 相关系数cor()
相关分析例子
Iris数据集目测相关性
> plot(iris[c(1,2)])

分离种属
> i1=iris[which(iris$Species=="setosa"),c(1:2)] > plot(i1)

求相关系数
相关系数是否显著,不能只根据值的大小还要进行假设检验
> cor(i1[1],i1[2])
Sepal.Width
Sepal.Length 0.7425467
0.74,相关性算是比较大
相关系数显著性的假设检验
假设r0为总体相关系数,r0=0则说明没有相关关系,建立假设H0:r0=0,
H1:r0<>0(alpha=0.05)
计算相关系数的t值和P值
> head(i1) Sepal.Length Sepal.Width1 5.1 3.52 4.9 3.03 4.7 3.24 4.6 3.15 5.0 3.66 5.4 3.9> cor.test(i1$Sepal.Length,i1$Sepal.Width)
Pearson's product-moment correlation
data: i1$Sepal.Length and i1$Sepal.Width
t = 7.6807, df = 48, p-value = 6.71e-10
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
0.5851391 0.8460314
sample estimates:
cor
0.7425467
p值足够小,足以拒绝原假设,即分离种属后setosa种类的鸢尾花花萼的长与宽有一定的相关性。
一元线性回归分析
原理:最小二乘法
步骤:建立回归模型,求解回归模型中的参数,对回归模型进行检验
例子
数据:身高-体重
> h=c(171,175,159,155,152,158,154,164,168,166,159,164) > w=c(57,64,41,38,35,44,41,51,57,49,47,46) > plot(w~h+1)

自定义函数
> lxy<-function(x,y){n=length(x);
+ sum(x*y)-sum(x)*sum(y)/n}
>#假设w=a+bh,则有
> b=lxy(h,w)/lxy(h,h)
> a=mean(w)-b*mean(h)
> a
[1] -140.3644
> b
[1] 1.15906
>
作回归直线
> lines(h,a+b*h)

回归系数的假设检验
建立线性模型
> a=lm(w~1+h)
> a
Call:
lm(formula = w ~ 1 + h)
Coefficients:
(Intercept) h
-140.364 1.159
> summary(a)#t检验
Call:
lm(formula = w ~ 1 + h)
Residuals:
Min 1Q Median 3Q Max
-3.721 -1.699 0.210 1.807 3.074
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -140.3644 17.5026 -8.02 1.15e-05 ***
h 1.1591 0.1079 10.74 8.21e-07 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 2.546 on 10 degrees of freedom
Multiple R-squared: 0.9203, Adjusted R-squared: 0.9123
F-statistic: 115.4 on 1 and 10 DF, p-value: 8.21e-07
线性模型中的***表示出拟合效果还不错,可以接受该拟合。
可见,自定义函数算出来的斜率跟截距和线性模型算出来的是一样的。
R与数据分析旧笔记(五)数学分析基本的更多相关文章
- R与数据分析旧笔记(十五) 基于有代表性的点的技术:K中心聚类法
基于有代表性的点的技术:K中心聚类法 基于有代表性的点的技术:K中心聚类法 算法步骤 随机选择k个点作为"中心点" 计算剩余的点到这个k中心点的距离,每个点被分配到最近的中心点组成 ...
- R与数据分析旧笔记(⑦)回归诊断
回归诊断 回归诊断 1.样本是否符合正态分布假设? 2.是否存在离群值导致模型发生较大误差? 3.线性模型是否合理? 4.误差是否满足独立性.等方差.正态分布等假设条件? 5.是否存在多重共线性 正态 ...
- R与数据分析旧笔记(三)不知道取什么题目
连线图 > a=c(2,3,4,5,6) > b=c(4,7,8,9,12) > plot(a,b,type="l") 多条曲线效果 plot(rain$Toky ...
- R与数据分析旧笔记(二)随机抽样的一个综合例子
题目:模拟产生统计专业同学的名单(学号区分),记录数学分析.线性代数.概率统计三科成绩,然后进行一些统计分析 > num=seq(10378001,10378100) > num [1] ...
- R与数据分析旧笔记(一)基本数学函数的使用
创建向量矩阵 > x1=c(2,3,6,8) > x2=c(1,2,3,4) > a1=(1:100) > length(a1) [1] 100 > length(x1) ...
- R与数据分析旧笔记(十八完结) 因子分析
因子分析 因子分析 降维的一种方法,是主成分分析的推广和发展 是用于分析隐藏在表面现象背后的因子作用的统计模型.试图用最少的个数的不可测的公共因子的线性函数与特殊因子之和来描述原来观测的每一分量 因子 ...
- R与数据分析旧笔记(十七) 主成分分析
主成分分析 主成分分析 Pearson于1901年提出的,再由Hotelling(1933)加以发展的一种多变量统计方法 通过析取主成分显出最大的个别差异,也用来削减回归分析和聚类分析中变量的数目 可 ...
- R与数据分析旧笔记(十六) 基于密度的方法:DBSCAN
基于密度的方法:DBSCAN 基于密度的方法:DBSCAN DBSCAN=Density-Based Spatial Clustering of Applications with Noise 本算法 ...
- R与数据分析旧笔记(十三) 聚类初步
聚类 聚类 关键度量指标:距离 常用距离 绝对值距离 绝对值距离也称为"棋盘距离"或"城市街区距离". 欧氏(Euclide)距离 闵可夫斯基(Minkowsk ...
随机推荐
- Apache经常使用配置
Apache採用IBM HTTPServer,内核为Apache/2.0.47 Server version: IBM_HTTP_Server/6.1.0.13 Apache/2.0.47 查 ...
- UIViewController、UINavigationController与UITabBarController的整合使用
UINavigationController与UITabBarController是iOS开发中最常用的两种视图控制器,它们都属于UIViewController的子类,继承关系如下: @interf ...
- Qt on Android:QTableView不显示选中虚框
在使用 QTableView 或 QTableWidget 时.有时我们不想要选中虚框,能够实现一个 ItemDelegate ,重写 drawFocus() 和 drawCheck() 两个虚函数 ...
- OCP prepare 20140628
1. null if nvl nvl2 NULLIF函数 Oracle NULLIF函数语法为NULLIF(表达式1,表达式2),如果表达式1和表达式2相等则返回空值,如果表达式1 ...
- 我本人一直以来犯的错误,在看了《Think In Java》后才抓了出来(转)
也许你是只老鸟,也许你的程序编的很精,但是,在你的程序生活,你也许没有注意到一些“常识性”的问题,因为有些时候我们不需要去注意,我们的程序 照样能够运行得飞快,但是如果那天有一个无聊的人问你一个像这样 ...
- QF——OC内存管理详解
堆的内存管理: 我们所说的内存管理,其实就是堆的内存管理.因为栈的内存会自动回收,堆的内存需要我们手动回收. 栈中一般存储的是基本数据类型变量和指向对象的指针(对象的引用),而真实的对象存储在堆中.因 ...
- python dbhelper(simple orm)
# coding:utf- import pymysql class Field(object): pass class Expr(object): def __init__(self, model, ...
- meta的属性详解
引言 您的个人网站即使做得再精彩,在“浩瀚如海”的网络空间中,也如一叶扁舟不易为人发现,如何推广个人网站,人们首先想到的方法无外乎以下几种: ● 在搜索引擎中登录自己的个人网站 ● 在知名网站加入你个 ...
- 获取checkbox 的选中状态的id、checkbox的一些操作
var id_array=new Array(); $('input[name="id"]:checked').each(function(){ id_array.push($(t ...
- struts2笔记02-action和Action类
1.action action表示一个struts2的请求! 2.Action类 能够处理struts2请求的类. (1)属性的名字需要与JavaBeans属性保持一致. 属性的类型可以是任 ...