当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R qqmath 具有理论分布的 Q-Q 图


R语言 qqmath 位于 lattice 包(package)。

说明

根据理论分布绘制样本的 quantile-Quantile 图,可能以其他变量为条件。

用法

qqmath(x, data, ...)

## S3 method for class 'formula'
qqmath(x,
       data,
       allow.multiple = is.null(groups) || outer,
       outer = !is.null(groups),
       distribution = qnorm,
       f.value = NULL,
       auto.key = lattice.getOption("default.args")$auto.key,
       aspect = "fill",
       panel = lattice.getOption("panel.qqmath"),
       prepanel = NULL,
       scales, strip, groups,
       xlab, xlim, ylab, ylim,
       drop.unused.levels = lattice.getOption("drop.unused.levels"),
       ...,
       lattice.options = NULL,
       default.scales = list(),
       default.prepanel = lattice.getOption("prepanel.default.qqmath"),
       subscripts,
       subset)
## S3 method for class 'numeric'
qqmath(x, data = NULL, ylab, ...)

参数

x

对其执行方法分派的对象。

对于 "formula" 方法,x 应为 ~ x | g1 * g2 * ... 形式的公式,其中 x 应为数值变量。对于"numeric" 方法,x 应为数值向量。

data

对于formula 方法,一个可选的数据源(通常是一个 DataFrame ),其中的变量将被评估(有关详细信息,请参阅xyplot)。不应为其他方法指定 data,如果指定,则会被忽略并显示警告。

distribution

一种分位数函数,采用概率向量作为参数,并根据理论分布生成相应的分位数。可能的值为 qnormqunif 等。具有其他必需参数的分布需要作为用户定义函数提供(请参阅 qt 示例)。

f.value

一个可选的概率数值向量,应绘制与之相对应的分位数。这也可以是返回此类数值向量的单个整数(表示样本大小)的函数。此参数的典型值是函数 ppoints ,这也是 S-PLUS 默认值。如果指定,则此函数生成的概率将用于通过样本的 quantile 函数以及指定为理论分布的 distribution 参数的函数来绘制分位数。

f.value 默认为 NULL ,其效果是使用 ppoints 作为理论分布的分位数,但使用样本的确切数据值。这与 qqnorm 发生的情况类似,但与 f.value=ppoints 的 S-PLUS 默认值不同。

对于大型 x ,此参数可用于限制绘制的点数。另请参阅 panel.qqmath 中的 tails.n 参数。

panel

为每个面板调用一次的函数,它使用与面板对应的数据包(面板变量的子集)来创建显示。默认面板函数 panel.qqmath 单独记录,并且具有可用于以各种方式自定义其输出的参数。此类参数通常可以直接提供给高级函数。

allow.multiple , outer

请参阅xyplot

auto.key

请参阅xyplot

aspect

请参阅xyplot

prepanel

请参阅xyplot

scales

请参阅xyplot

strip

请参阅xyplot

groups

请参阅xyplot

xlab , ylab

请参阅xyplot

xlim , ylim

请参阅xyplot

drop.unused.levels

请参阅xyplot

lattice.options

请参阅xyplot

default.scales

请参阅xyplot

subscripts

请参阅xyplot

subset

请参阅xyplot

default.prepanel

后备预面板函数。请参阅xyplot

...

进一步的论证。有关重要细节,请参阅 xyplot 中的相应条目。

细节

qqmath 生成给定样本相对于理论分布的 Q-Q 图。 qqmath 的默认行为与相应的 S-PLUS 函数不同,但与 qqnorm 类似。有关详细信息,请参阅 f.value 条目。

实现细节也与S-PLUS不同。特别是,所有重要的计算都是由面板(和预面板函数)完成的,而不是qqmath 本身。事实上,参数 distributionf.value 均原封不动地传递给面板和预面板函数。除其他外,这允许显示分组的Q-Q图,这通常很有用。有关更多详细信息,请参阅 panel.qqmath 的帮助页面。

该函数和所有其他高级网格函数有几个共同的参数。这些仅在 xyplot 的帮助页面中进行了大量记录,应查阅该页面以了解更详细的用法。

"trellis" 的对象。 update 方法可用于更新对象的组件,print 方法(通常默认调用)会将其绘制在适当的绘图设备上。

例子

qqmath(~ rnorm(100), distribution = function(p) qt(p, df = 10))
qqmath(~ height | voice.part, aspect = "xy", data = singer,
       prepanel = prepanel.qqmathline,
       panel = function(x, ...) {
          panel.qqmathline(x, ...)
          panel.qqmath(x, ...)
       })
vp.comb <-
    factor(sapply(strsplit(as.character(singer$voice.part), split = " "),
                  "[", 1),
           levels = c("Bass", "Tenor", "Alto", "Soprano"))
vp.group <-
    factor(sapply(strsplit(as.character(singer$voice.part), split = " "),
                  "[", 2))
qqmath(~ height | vp.comb, data = singer,
       groups = vp.group, auto.key = list(space = "right"),
       aspect = "xy",
       prepanel = prepanel.qqmathline,
       panel = function(x, ...) {
          panel.qqmathline(x, ...)
          panel.qqmath(x, ...)
       })

作者

Deepayan Sarkar Deepayan.Sarkar@R-project.org

也可以看看

xyplot , panel.qqmath , panel.qqmathline , prepanel.qqmathline , Lattice , quantile

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Q-Q Plot with Theoretical Distribution。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。