R語言的xtabs函數(shù)實(shí)例講解
今天在做一個(gè)列聯(lián)表獨(dú)立性檢驗(yàn)的時(shí)候,總是無法處理好要求的數(shù)據(jù)類型,偶然的機(jī)會(huì),看到了xtabs()函數(shù),感覺很適合用來做列聯(lián)表,適合將一列數(shù)據(jù)轉(zhuǎn)換成列聯(lián)表。
shifou <- c("yes","yes","no","no")
xinbie <- c("nan","nv","nan","nv")
freq <- c(34,38,28,50)
(exer6_2 <- data.frame(shifou,xinbie,freq))
(count22 <- xtabs(freq~.,data = exer6_2))#這個(gè)點(diǎn)表示shifou + xinbie,這個(gè)和lm()用法差不多
assocstats(count22)
運(yùn)行過程與結(jié)果如下:
> shifou <- c("yes","yes","no","no")#是否逃課
> xinbie <- c("nan","nv","nan","nv")#性別
> freq <- c(34,38,28,50)
> (exer6_2 <- data.frame(shifou,xinbie,freq))#“nan”表示男,“nv”表示女,yes表示逃課,no表示不逃課
shifou xinbie freq
1 yes nan 34
2 yes nv 38
3 no nan 28
4 no nv 50
> (count22 <- xtabs(freq~.,data = exer6_2))#這個(gè)數(shù)據(jù)表示性別與性別是否有關(guān)
xinbie
shifou nan nv
no 28 50
yes 34 38
> assocstats(count22)
X^2 df P(> X^2)
Likelihood Ratio 1.9830 1 0.15908
Pearson 1.9802 1 0.15937<br>#這個(gè)p值為0.15937大于0.05,表示與性別沒有關(guān)系
Phi-Coefficient : 0.115
Contingency Coeff.: 0.114
Cramer's V : 0.115
接下來,創(chuàng)建一個(gè)更加難的數(shù)據(jù)集
(價(jià)格 <- rep(c("10萬以下","10~20萬","20~30萬","30萬以上"),each = 3))
(地區(qū) <- rep(c("東部","中部","西部"),each = 1,times = 4))
(數(shù)量 <- c(20,40,40,50,60,50,30,20,20,40,20,10))
(銷售情況 <- data.frame(價(jià)格,地區(qū),數(shù)量))
(count2 <- xtabs(數(shù)量 ~ (價(jià)格 + 地區(qū)),data = 銷售情況))
運(yùn)算過程:
> (價(jià)格 <- rep(c("10萬以下","10~20萬","20~30萬","30萬以上"),each = 3))
[1] "10萬以下" "10萬以下" "10萬以下" "10~20萬" "10~20萬" "10~20萬" "20~30萬"
[8] "20~30萬" "20~30萬" "30萬以上" "30萬以上" "30萬以上"
> (地區(qū) <- rep(c("東部","中部","西部"),each = 1,times = 4))
[1] "東部" "中部" "西部" "東部" "中部" "西部" "東部" "中部" "西部" "東部" "中部"
[12] "西部"
> (數(shù)量 <- c(20,40,40,50,60,50,30,20,20,40,20,10))
[1] 20 40 40 50 60 50 30 20 20 40 20 10
> (銷售情況 <- data.frame(價(jià)格,地區(qū),數(shù)量))
價(jià)格 地區(qū) 數(shù)量
1 10萬以下 東部 20
2 10萬以下 中部 40
3 10萬以下 西部 40
4 10~20萬 東部 50
5 10~20萬 中部 60
6 10~20萬 西部 50
7 20~30萬 東部 30
8 20~30萬 中部 20
9 20~30萬 西部 20
10 30萬以上 東部 40
11 30萬以上 中部 20
12 30萬以上 西部 10
> (count2 <- xtabs(數(shù)量 ~ (價(jià)格 + 地區(qū)),data = 銷售情況))
地區(qū)
價(jià)格 東部 西部 中部
10~20萬 50 50 60
10萬以下 20 40 40
20~30萬 30 20 20
30萬以上 40 10 20
可以看出這個(gè)count2也構(gòu)成了這個(gè)列聯(lián)表的形式,接下來,使用chisq.test()函數(shù)便可進(jìn)行卡方檢驗(yàn)
> chisq.test(count2) Pearson's Chi-squared test data: count2 X-squared = 29.991, df = 6, p-value = 3.946e-05
到此這篇關(guān)于R語言的xtabs函數(shù)實(shí)例講解的文章就介紹到這了,更多相關(guān)R語言的xtabs函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
R語言數(shù)據(jù)讀取以及數(shù)據(jù)保存方式
這篇文章主要介紹了R語言數(shù)據(jù)讀取以及數(shù)據(jù)保存方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04
R語言使用cgdsr包獲取TCGA數(shù)據(jù)示例詳解
這篇文章主要為大家介紹了R語言使用cgdsr包獲取TCGA數(shù)據(jù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06
R語言 設(shè)置ylab每個(gè)漢字豎向排列的操作
這篇文章主要介紹了R語言 設(shè)置ylab每個(gè)漢字豎向排列的操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04
R語言 實(shí)現(xiàn)在循環(huán)中輸出圖片的操作
這篇文章主要介紹了R語言 實(shí)現(xiàn)在循環(huán)中輸出圖片的操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04
R語言模擬疫情傳播圖RVirusBroadcast展示疫情數(shù)據(jù)
本文用RVirusBroadcast展示模擬的疫情數(shù)據(jù),讓R語言模擬疫情傳播圖來告訴你為什么還不到出門的時(shí)候,有需要的朋友可以借鑒參考下,希望能夠有所幫助2022-02-02

