日本电影一区二区_日本va欧美va精品发布_日本黄h兄妹h动漫一区二区三区_日本欧美黄色

技術(shù) – R 語(yǔ)言 stats 包中的函數(shù)(r語(yǔ)言stem函數(shù))

技術(shù) - R 語(yǔ)言 stats 包中的函數(shù)(r語(yǔ)言stem函數(shù))

我們已經(jīng)學(xué)習(xí)了 R 語(yǔ)言的基礎(chǔ)知識(shí),包括其語(yǔ)法以及語(yǔ)法所對(duì)應(yīng)的語(yǔ)義,現(xiàn)在準(zhǔn)備使用 R 向統(tǒng)計(jì)學(xué)領(lǐng)域進(jìn)發(fā)。本文是 R 系列的第十一篇文章,我們將學(xué)習(xí)如何使用 R 語(yǔ)言 stats 包中提供的統(tǒng)計(jì)函數(shù)。

與此系列之前的文章一樣,我們將使用安裝在 Parabola GNU/Linux-libre(x86-64)上的 R 4.1.2 版本來(lái)運(yùn)行文中的代碼。

$ R --versionR version 4.1.2 (2021-11-01) -- \"Bird Hippie\"Copyright (C) 2021 The R Foundation for Statistical ComputingPlatform: x86_64-pc-linux-gnu (64-bit)R is free software and comes with ABSOLUTELY NO WARRANTY.You are welcome to redistribute it under the terms of theGNU General Public License versions 2 or 3.For more information about these matters see https://www.gnu.org/licenses/

mean 函數(shù)

在 R 中 mean函數(shù)用來(lái)計(jì)算算術(shù)平均值。該函數(shù)接受一個(gè) R 對(duì)象x作為參數(shù),以及一個(gè)trim選項(xiàng)來(lái)在計(jì)算均值之前剔除任意比例的數(shù)據(jù)(LCTT 譯注:比如對(duì)于一個(gè)含有 7 個(gè)元素的向量x,設(shè)置trim為 0.2 表示分別去掉x中最大和最小的前 20% —— 即 1.4 個(gè) —— 的元素,所去掉的元素的個(gè)數(shù)會(huì)向下取整,所以最終會(huì)去掉 1 個(gè)最大值和 1 個(gè)最小值;trim取值范圍為[0, 0.5],默認(rèn)為 0)。邏輯參數(shù)logical argument(TRUEFALSEna.rm可以設(shè)置是否忽略空值(NA)。該函數(shù)的語(yǔ)法如下:

mean(x, trim = 0, na.rm = FALSE, ...)

該函數(shù)支持?jǐn)?shù)值、邏輯值、日期和 時(shí)間區(qū)間time intervals。下面是使用 mean函數(shù)的一些例子:

> mean(c(1, 2, 3))2> mean(c(1:5, 10, 20))6.428571> mean(c(FALSE, TRUE, FALSE))0.3333333> mean(c(TRUE, TRUE, TRUE))1

我們使用 UCI 機(jī)器學(xué)習(xí)庫(kù)提供的一個(gè)采集自葡萄牙銀行機(jī)構(gòu)的“銀行營(yíng)銷(xiāo)數(shù)據(jù)集”作為樣本數(shù)據(jù)。該數(shù)據(jù)可用于公共研究,包含 4 個(gè) csv 文件,我們使用 read.csv函數(shù)導(dǎo)入其中的bank.csv文件。

> bank bank[1:3,] age job marital education default balance housing loan contact day1 30 unemployed married primary no 1787 no no cellular 192 33 services married secondary no 4789 yes yes cellular 113 35 management single tertiary no 1350 yes no cellular 16 month duration campaign pdays previous poutcome y1 oct 79 1 -1 0 unknown no2 may 220 1 339 4 failure no3 apr 185 1 330 1 failure no

下面是計(jì)算 age列均值的示例:

> mean(bank$age)41.1701

median 函數(shù)

R 語(yǔ)言 stats包中的median函數(shù)用來(lái)計(jì)算樣本的中位數(shù)。該函數(shù)接受一個(gè)數(shù)值向量x,以及一個(gè)邏輯值na.rm用來(lái)設(shè)置在計(jì)算中位數(shù)之前是否去除NA值。該函數(shù)的語(yǔ)法如下:

median(x, na.rm = FALSE, ...)

下面是使用該函數(shù)的兩個(gè)例子:

> median(3:5)4> median(c(3:5, 50, 150))[1] 5

現(xiàn)在我們可以計(jì)算銀行數(shù)據(jù)中 age列的中位數(shù):

> median(bank$age)39

Pair 函數(shù)

pair函數(shù)用來(lái)合并兩個(gè)向量,接受向量x和向量y兩個(gè)參數(shù)。xy的長(zhǎng)度必須相等。

Pair(x, y)

該函數(shù)返回一個(gè) Pair類(lèi)的列數(shù)為 2 的矩陣,示例如下:

> Pair(c(1,2,3), c(4,5,6)) x y[1,] 1 4[2,] 2 5[3,] 3 6attr(,\"class\")[1] \"Pair\"

該函數(shù)常用于像 T 檢驗(yàn)和 Wilcox 檢驗(yàn)等的 配對(duì)檢驗(yàn)paired test。

dist 函數(shù)

dist函數(shù)用來(lái)計(jì)算數(shù)據(jù)矩陣中各行之間的距離矩陣,接受以下參數(shù):

參數(shù) 描述
x 數(shù)值矩陣
method 距離測(cè)量方法
diag 若為 TRUE,則打印距離矩陣的對(duì)角線
upper 若為 TRUE,則打印距離矩陣的上三角
p 閔可夫斯基距離的冪次(見(jiàn)下文 LCTT 譯注)

該函數(shù)提供的距離測(cè)量方法包括:歐式距離euclidean、最大距離maximum、曼哈頓距離manhattan、堪培拉距離canberra、二進(jìn)制距離binary 和 閔可夫斯基距離minkowski,默認(rèn)為歐式距離。

LCTT 譯注:

歐式距離指兩點(diǎn)之間線段的長(zhǎng)度,比如二維空間中 A 點(diǎn)和 B 點(diǎn)的歐式距離是;最大距離指 n 維向量空間中兩點(diǎn)在各維度上的距離的最大值,比如 A 點(diǎn) (3,6,8,9) 和 B 點(diǎn) (1,8,9,10) 之間的最大距離是,等于 2;曼哈頓距離指 n 維向量空間中兩點(diǎn)在各維度上的距離之和,比如二維空間中 A 點(diǎn)和 B 點(diǎn)之間的曼哈頓距離是;堪培拉距離的公式是;二進(jìn)制距離首先將兩個(gè)向量中的各元素看作其二進(jìn)制形式,然后剔除在兩個(gè)向量中對(duì)應(yīng)值均為 0 的維度,最后計(jì)算在剩下的維度上兩個(gè)向量間的對(duì)應(yīng)值不相同的比例,比如 V1=(1,3,0,5,0) 和 V2=(11,13,0,15,10) 的二進(jìn)制形式分別是 (1,1,0,1,0) 和 (1,1,0,1,1),其中第 3 個(gè)維度的對(duì)應(yīng)值均為 0,剔除該維度之后為 (1,1,1,0) 和 (1,1,1,1),在剩余的 4 個(gè)維度中只有最后一個(gè)維度在兩個(gè)向量之間的值不同,最終結(jié)果為 0.25;閔可夫斯基距離是歐式距離和曼哈頓距離的推廣,公式是,當(dāng) p = 1 時(shí)相當(dāng)于曼哈頓距離,當(dāng) p = 2 時(shí)相當(dāng)于歐式距離。

下面是使用歐式距離計(jì)算 age列距離矩陣的示例:

> dist(bank$age, method=\"euclidean\", diag=FALSE, upper=FALSE, p=2) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 252 33 5 24 0 3 55 29 26 24 296 5 2 0 5 247 6 3 1 6 23 18 9 6 4 9 20 4 39 11 8 6 11 18 6 5 210 13 10 8 13 16 8 7 4 211 9 6 4 9 20 4 3 0 2 412 13 10 8 13 16 8 7 4 2 0 413 6 3 1 6 23 1 0 3 5 7 3 714 10 13 15 10 39 15 16 19 21 23 19 23 1615 1 2 4 1 28 4 5 8 10 12 8 12 5 1116 10 7 5 10 19 5 4 1 1 3 1 3 4 20 917 26 23 21 26 3 21 20 17 15 13 17 13 20 36 25 1618 7 4 2 7 22 2 1 2 4 6 2 6 1 17 6 3 1919 5 8 10 5 34 10 11 14 16 18 14 18 11 5 6 15 31 1220 1 2 4 1 28 4 5 8 10 12 8 12 5 11 0 9 25 6 621 8 5 3 8 21 3 2 1 3 5 1 5 2 18 7 2 18 1 13 722 12 9 7 12 17 7 6 3 1 1 3 1 6 22 11 2 14 5 17 11 423 14 11 9 14 15 9 8 5 3 1 5 1 8 24 13 4 12 7 19 13 6 2 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50...

改用二進(jìn)制距離的計(jì)算結(jié)果如下:

> dist(bank$age, method=\"binary\", diag=FALSE, upper=FALSE, p=2) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 282 03 0 04 0 0 05 0 0 0 06 0 0 0 0 07 0 0 0 0 0 08 0 0 0 0 0 0 09 0 0 0 0 0 0 0 010 0 0 0 0 0 0 0 0 011 0 0 0 0 0 0 0 0 0 012 0 0 0 0 0 0 0 0 0 0 013 0 0 0 0 0 0 0 0 0 0 0 014 0 0 0 0 0 0 0 0 0 0 0 0 015 0 0 0 0 0 0 0 0 0 0 0 0 0 016 0 0 0 0 0 0 0 0 0 0 0 0 0 0 017 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 018 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 019 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 020 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 021 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 022 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 023 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53

quantile 函數(shù)

quantile函數(shù)用于計(jì)算數(shù)值向量x的分位數(shù)及其對(duì)應(yīng)的概率。當(dāng)設(shè)置na.rmTRUE時(shí),該函數(shù)將忽略向量中的NANaN值。概率 0 對(duì)應(yīng)最小觀測(cè)值,概率 1 對(duì)應(yīng)最大觀測(cè)值。該函數(shù)的語(yǔ)法如下:

quantile(x, ...)

quantile函數(shù)接受以下參數(shù):

參數(shù) 描述
x 數(shù)值向量
probs 概率向量,取值為 [0, 1](LCTT 譯注:默認(rèn)為(0, 0.25, 0.5, 0.75, 1)
na.rm 若為 TRUE,忽略向量中的NANaN
names 若為 TRUE,在結(jié)果中包含命名屬性
type 整數(shù)類(lèi)型,用于選擇任意一個(gè)九種分位數(shù)算法(LCTT 譯注:默認(rèn)為 7)
digits 小數(shù)精度
傳遞給其他方法的額外參數(shù)

rnorm函數(shù)可用于生成正態(tài)分布的隨機(jī)數(shù)。它可以接受要生成的觀測(cè)值的數(shù)量n,一個(gè)均值向量以及一個(gè)標(biāo)準(zhǔn)差向量。下面是一個(gè)計(jì)算rnorm函數(shù)生成的隨機(jī)數(shù)的四分位數(shù)的示例:

> quantile(x

下面是生成銀行年齡數(shù)據(jù)對(duì)應(yīng)概率下的分位數(shù)的示例:

> quantile(bank$age, probs = c(0.1, 0.5, 1, 2, 5, 10, 50)/100)0.1% 0.5% 1% 2% 5% 10% 50%20.0 22.6 24.0 25.0 27.0 29.0 39.0

IQR 函數(shù)

IQR函數(shù)用于計(jì)算向量中數(shù)值的 四分位距interquartile range。其語(yǔ)法如下:

IQR(x, na.rm = FALSE, type = 7)

參數(shù) type指定了一個(gè)整數(shù)以選擇分位數(shù)算法,該算法在Hyndman and Fan (1996)中進(jìn)行了討論。下面是計(jì)算銀行年齡四分位距的示例:

> IQR(bank$age, na.rm = FALSE, type=7)16

sd 函數(shù)

sd函數(shù)用來(lái)計(jì)算一組數(shù)值中的標(biāo)準(zhǔn)差。該函數(shù)接受一個(gè) 數(shù)值向量numeric vectorx和一個(gè)邏輯值na.rmna.rm用來(lái)設(shè)置在計(jì)算時(shí)是否忽略缺失值。該函數(shù)的語(yǔ)法如下:

sd(x, na.rm = FALSE)

對(duì)于長(zhǎng)度為 0 或 1 的向量,該函數(shù)返回 NA。下面是兩個(gè)例子:

> sd(1:10)3.02765> sd(1)NA

下面是計(jì)算 age標(biāo)準(zhǔn)差的示例:

> sd(bank$age)10.57621

R 語(yǔ)言 stats 包中還有很多其他函數(shù),鼓勵(lì)你自行探索。

(題圖:MJ/ee6b533d-69fc-4baa-a985-cc4e499b5029)

via: https://www.opensourceforu.com/2022/08/the-functions-in-the-r-stats-package/

作者:Shakthi Kannan選題:lkxed譯者:tanloong校對(duì):wxy

本文由 LCTT原創(chuàng)編譯,Linux中國(guó)榮譽(yù)推出

相關(guān)新聞

聯(lián)系我們
聯(lián)系我們
公眾號(hào)
公眾號(hào)
在線咨詢(xún)
分享本頁(yè)
返回頂部
当阳市| 渑池县| 中西区| 鸡东县| 平昌县| 化德县| 高碑店市| 诸暨市| 清远市| 安图县| 广水市| 瓮安县| 湖北省| 奈曼旗| 古田县| 武宣县| 威远县| 克东县| 克山县| 岫岩| 定襄县| 富裕县| 大港区| 新民市| 靖江市| 余姚市| 铜鼓县| 光泽县| 虹口区| 梨树县| 慈溪市| 仁布县| 思茅市| 黄平县| 四川省| 潮州市| 牙克石市| 扶沟县| 前郭尔| 宕昌县| 水富县|