《R语言实战》自学笔记26-概率函数

Python07

《R语言实战》自学笔记26-概率函数,第1张

在R中,概率函数形如:

[dpqr]distribution_abbreviation

其中第一个字母表示其所指分布的某一方面:

d = 密度函数(density)

p = 分布函数(distribution function)

q = 分位数函数(quantile function)

r = 生成随机数(随机偏差)

以正态分布为例

1 什么是正态分布

正态分布也被称为高斯分布,是统计学中极为常见的连续型概率分布。正态曲线呈钟型,两头低,中间高,左右对称因其曲线呈钟形,因此人们又经常称之为钟形曲线。

2 正态分布的两个参数及图形

正态分布有两个参数,即均数和标准差。 1)概率密度曲线在均值处达到最大,并且对称; 2)一旦均值和标准差确定,正态分布曲线也就确定; 3)当X的取值向横轴左右两个方向无限延伸时,曲线的两个尾端也无限渐近横轴,理论上永远不会与之相交; 4)正态随机变量在特定区间上的取值概率由正态曲线下的面积给出,而且其曲线下的总面积等于1;

5)均值可取实数轴上的任意数值,决定正态曲线的具体位置;标准差决定曲线的“陡峭”或“扁平”程度:标准差越大,正态曲线越扁平;标准差越小,正态曲线越陡峭。这是因为,标准差越小,意味着大多数变量值离均数的距离越短,因此大多数值都紧密地聚集在均数周围,图形所能覆盖的变量值就少些,于是都挤在一块,图形上呈现瘦高型。相反,标准差越大,数据跨度就比较大,分散程度大,所覆盖的变量值就越多,图形呈现“矮胖型”。

3 标准正态分布

如果不指定一个均值和一个标准差,则函数将假定其为标准正态分布(均值为0,标准差为1)。

4 正态分布的概率函数

概率密度函数为dnorm(),分布函数pnorm(),分位函数qnorm(),随机数生成函数rnorm()。

dnorm(x, mean = 0, sd = 1, log = FALSE)

pnorm(q, mean = 0, sd = 1, lower.tail = TRUE, log.p = FALSE)

qnorm(p, mean = 0, sd = 1, lower.tail = TRUE, log.p = FALSE)

rnorm(n, mean = 0, sd = 1)

x - 是数字的向量。

p - 是概率向量。

n - 是观察次数(样本量)。

mean - 是样本数据的平均值,默认值为零。

sd - 是标准偏差,默认值为1。

pretty()创建美观的分割点。选取n+1等间距的取整数,将连续变量x分割为n个区间。pretty(x,n)

x:它被定义为矢量数据。

n:结果向量的长度。

返回:等长区间的数据向量。

设定随机数种子

set.seed()

该函数是设定生成随机数的种子,种子是为了让结果具有重复性,保证你在执行和调试后,所创造的随机数保持不变。 24

runif(n, min = 0, max = 1)

该函数用于创建均匀分布的随机偏差。n表示观察次数,min和max分别为最小最大值。

其他概率分布见下表。

参考资料:

是stats包中的函数,要注意它与Anova的区别。

car包中的函数。用来计算II 和 III型方差。

| anova {stats} | R Documentation |

Compute analysis of variance (or deviance) tables for one or more fitted model objects.计算一个或多个拟合模型对象的方差(或偏差)表。偏差又称为表观误差,是指个别测定值与测定的平均值之差,它可以用来衡量测定结果的精密度高低。在统计学中,偏差可以用于两个不同的概念,即有偏采样与有偏估计。一个有偏采样是对总样本集非平等采样,而一个有偏估计则是指高估或低估要估计的量 。

我个人理解是,计算模型的偏差,或者是可解释方差。可解释方差越大,代表该因素对因变量的影响越大。

如果是线性回归,可以用anova()输出F检验的方差分析表,如果变量只有2个水平,则应该跟t检验的p结果一致。

如果是逻辑回归,可以用anova()输出卡方检验的分析表。

anova(object, ...)

object

an object containing the results returned by a model fitting function (e.g., lm or glm ).

...

additional objects of the same type.

This (generic) function returns an object of class anova . These objects represent analysis-of-variance and analysis-of-deviance tables.

此(泛型)函数返回一个 anova 类的对象。这些对象表示方差分析表和偏差分析表。

When given a single argument it produces a table which tests whether the model terms are significant.

当给定单个参数时,它会生成一个表,用于测试模型各个项是否显著。

When given a sequence of objects, anova tests the models against one another in the order specified.

当给定一系列对象时, anova 会按照指定的顺序对模型进行相互测试。

The print method for anova objects prints tables in a ‘pretty’ form.

“anova”对象的print方法以“ pretty”的形式打印表格。

The comparison between two or more models will only be valid if they are fitted to the same dataset. This may be a problem if there are missing values and R 's default of na.action = na.omit is used.

两个或多个模型之间的比较只有在它们符合同一数据集时才有效。如果有缺失值,并且使用了 R 的默认值: na.action=na.omit ,这可能会有问题。

Chambers, J. M. and Hastie, T. J. (1992) Statistical Models in S , Wadsworth &Brooks/Cole.

| summary {base} | R Documentation |

summary is a generic function used to produce result summaries of the results of various model fitting functions. The function invokes particular methods which depend on the class of the first argument.

summary 是一个通用函数,用于生成各种模型拟合函数的结果。该函数调用特定的参数方法,这些方法取决于第一个参数的参数类。

R语言中取整运算主要包括以下五种:floor():向下取整;ceiling(): 向上取整;round(): 四舍五入取整;turnc(): 向0取整;signif(): 保留给定位数的精度。

floor返回对应数字的'地板'值,即不大于该数字的最大值;

ceiling返回对应数字的'天花板'值,就是不小于该数字的最小整数;

round是R里的'四舍五入'函数,具体的规则采用banker's rounding,即四舍六入五留双规则(wiki)。round的原型是round(x, digits = 0), digits设定小数点位置,默认为零即小数点后零位(取整)。

trun的特性是'向零截取', 也就是说对于一个数字a,它将数轴分成两侧,trunc(a)将返回数轴上包含数字0的那一侧离a最近的那个整数。

signif是保留有效数字的函数。常用于科学计数。