當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。