正態分佈R語言例項

2021-07-14 00:25:30 字數 1296 閱讀 4889

開機時顯示的時間排名是如何設計的呢?下面以此為例一起學下r語言與正態分佈。

首先,你可能會覺得它是這樣子實現的:

1、收集所有使用者的開機時間的資料,排好序放在乙個資料庫中;

2、然後根據你的開機時間,找出你的排名,除以總使用者數,就是你擊敗電腦佔比。

data 

mean(data[, 1])

sd(data[, 1])

hist(

data[, 1], prob=true,

main="開機時間頻率直方圖",

ylab="頻率", xlab="開機時間(秒)"

從這個圖中,我們可以看到,開機時間貌似符合正態分佈,有戲!對吧,但是我只能用貌似,因為我還沒有檢測資料的正態性,好,我們使用r來檢測一下開機時間是否符合正態分佈。

檢測正態分佈的方法:

繪製qq圖,qq圖判斷法:檢視我們的資料,是否絕大部分落在中間直線的附近。

qqnorm(

data[, 1],

main="qq圖",

可以看到,qq圖中,所有的點都落在了中間的直線上,直觀上我們就可以判斷這個資料的分布符合正態分佈了。

驗證了資料是正態分佈的之後,事情就變得非常簡單了,下面我們來看看如何進行建模。

一、建立正態分佈的模型,只需要求出正態分佈的均值和標準差即可,也就是:

data_mean 

data_sd

> data_mean

[1] 50.7848

> data_sd

[1] 11.10776

二、然後儲存這個資料在軟體中,有乙個使用者開機時間為38秒,那麼他的排名是多少呢?

> 1 - pnorm(38, mean=data_mean, sd=data_sd)

[1] 0.8751295

也就是說,我們使用pnorm函式,根據正態分佈的性質,就可以求出這個使用者的排名是87.5%了。

R語言檢測資料正態分佈

輸入注釋 nx c rnorm 10 隨機產生10個正態分佈的資料 nx檢視nx 1 0.83241783 0.29609562 0.06736888 0.02366562 0.23652392 0.97570959 7 0.85301145 1.51769488 0.84866517 0.2069...

R正態分佈 ggplot

randnorm rnorm 3000 rnorm 3000 產生3000個正太分布數 randdensity dnorm randnorm dnorm randnorm 求其密度函式值 ggplot data.frame x randnorm,y randdensity aes x x,y y g...

(R語言)概率分布

8.1 r是乙個統計表集合 略讀 8.2 檢測資料集的分布 函式summary和fivenum這兩個函式可以給出摘要,後者只給出數值 函式stem可以將數值統計結果以類似直方圖的方式顯示出來 函式hist 可以繪製直方圖 函式density和line可以獲得更漂亮的密度圖 功能包fun中的ecdf函...