上篇《描述統(tǒng)計學(xué)之R語言實戰(zhàn)1:表格法》主要介紹了如何用R語言實現(xiàn)單變量數(shù)據(jù)、兩個變量數(shù)據(jù)的表格統(tǒng)計法螺垢,本篇將介紹如何使用R語言對單變量數(shù)據(jù)喧务、兩個變量數(shù)據(jù)進行圖形化顯示赖歌。
單變量的數(shù)據(jù)統(tǒng)計
條形圖和餅圖是用來描述已匯總的分類型數(shù)據(jù)的頻數(shù)分布、相對頻數(shù)分布或百分?jǐn)?shù)頻數(shù)分布的圖形方法功茴。
1.在R中導(dǎo)入“50次購買軟飲料的樣本數(shù)據(jù)”庐冯。
> library(xlsx)
> drink<-read.xlsx('/Users/liuqin/Documents/50次購買軟飲料的樣本數(shù)據(jù).xlsx',1)
> head(drink)
購買記錄 飲料類別
1 1 可口可樂
2 2 健怡可樂
3 3 百事可樂
4 4 健怡可樂
5 5 可口可樂
6 6 可口可樂
2.table()函數(shù)匯總各類別飲料后,用barplot()函數(shù)繪制購買飲料的條形圖坎穿,條形圖可直觀的看到各類別飲料受歡迎程度展父。
> counts<-with(drink,table(飲料類別))
> counts
飲料類別
百事可樂 胡椒博士 健怡可樂 可口可樂 雪碧
13 5 8 19 5
> barplot(counts,main='購買軟飲料的條形圖',cex.names=0.8,
xlab='軟飲料',ylab='頻數(shù)',family='STKaiti',col='cadetblue1')
3.也可用pie()函數(shù)繪制餅圖,每一個扇形部分的數(shù)值可以是頻數(shù)玲昧、相對頻數(shù)或百分?jǐn)?shù)頻數(shù)栖茉。一般餅形圖不是呈現(xiàn)對比的最佳途徑,相對于面積孵延,人們對長度的判斷更精確吕漂,所以更推薦使用條形圖。
> lbls<-paste(names(counts),'\n',counts,sep='')
> pie(counts,labels=lbls,main='購買軟飲料的餅圖',family='STKaiti')
打點圖和直方圖是常用的數(shù)量型數(shù)據(jù)的圖形匯總方法尘应。
1.在R中導(dǎo)入“年末審計時間的樣本數(shù)據(jù)”惶凝。
> time<-read.xlsx('/Users/liuqin/Documents/年末審計時間樣本數(shù)據(jù).xlsx',1)
> head(time)
客戶 年末審計時間.單位.天.
1 1 12
2 2 15
3 3 20
4 4 22
5 5 14
6 6 14
2.使用dotchart()函數(shù)創(chuàng)建散點圖,橫軸是數(shù)據(jù)的值域犬钢,每一個數(shù)據(jù)值由橫軸上的點表示苍鲜,3個點位于橫軸刻度18之上,表明有3次審計時間為18天玷犹。散點圖能夠顯示數(shù)據(jù)的細(xì)節(jié)坡贺,且有利于比較兩個或更多變量的數(shù)據(jù)分布。
> dotchart(time$年末審計時間.單位.天.,cex=0.8,main='審計時間數(shù)據(jù)的打點圖',
xlab='審計時間(天數(shù))',color='darkgreen',pch=19,family='STKaiti')
3.也可使用hist()函數(shù)創(chuàng)建直方圖箱舞,與條形圖不同遍坟,直方圖中鄰近的長方形是相互連接的,且直觀的提供了數(shù)據(jù)分布形態(tài)的信息晴股。
> hist(time$年末審計時間.單位.天.,col='bisque',xlab='審計時間(天)',
ylab='頻數(shù)',main='審計時間數(shù)據(jù)的直方圖',family='STKaiti')
兩個變量的數(shù)據(jù)統(tǒng)計
散點圖是對兩個數(shù)量變量間關(guān)系的圖形表述愿伴,趨勢圖是顯示兩個變量相關(guān)性近似程度的一條直線。
1.在R中導(dǎo)入“音像設(shè)備商店的樣本數(shù)據(jù)”电湘。
> data<-read.xlsx('/Users/liuqin/Documents/音像設(shè)備商店的樣本數(shù)據(jù).xlsx',1)
> head(data)
周 廣告次數(shù)x 銷售額y.100美元.
1 1 2 50
2 2 5 57
3 3 1 41
4 4 3 54
5 5 4 54
6 6 1 38
2.plot()函數(shù)可繪制樣本數(shù)據(jù)的散點圖隔节,廣告次數(shù)(x)顯示在橫軸上,銷售額(y)顯示在縱軸上寂呛,散點圖表明怎诫,廣告次數(shù)和銷售額之間存在正相關(guān)性。abline()函數(shù)用來添加最佳擬合的線性直線贷痪,所有點不在一條直線上幻妓,所以不完全是線性關(guān)系,其整體關(guān)系是正相關(guān)的劫拢。
> attach(data)
> plot(廣告次數(shù)x,銷售額y.100美元.,main='音像設(shè)備商店的散點圖和趨勢圖',
xlab='廣告次數(shù)',ylab='銷售額(100美元)',pch=19,family='STKaiti')
> abline(lm(銷售額y.100美元.~廣告次數(shù)x),col='red',lwd=2,lty=1)
復(fù)合條形圖和結(jié)構(gòu)條形圖(堆積條形圖)是比較兩個及兩個以上變量的圖形顯示方式肉津。
1.在R中導(dǎo)入“100家洛杉磯飯店的質(zhì)量等級和餐價樣本數(shù)據(jù)”强胰。
> mydata<-read.xlsx('/Users/liuqin/Documents/100家洛杉磯飯店的質(zhì)量等級和餐價樣本數(shù)據(jù).xlsx',1)
> head(mydata)
飯店 質(zhì)量等級 餐價.美元.
1 1 好 18
2 2 好 22
3 3 好 28
4 4 很好 38
5 5 很好 33
6 6 好 28
2.餐價是一個數(shù)量變量,因此需要現(xiàn)將餐價數(shù)據(jù)分為4個組妹沙,然后使用barplot()函數(shù)繪制飯店數(shù)據(jù)的復(fù)合條形圖偶洋,如圖所示,隨著餐價的增加距糖,“好”的長方形高度在減少玄窝,而“優(yōu)秀”的長方形高度在增加,這表明隨著價格的增加悍引,質(zhì)量等級趨向于更好哆料。
> 餐價<- c("10~19", "20~29", "30~39", "40~49")
> breaks <- c(10,19,29,39,49)
> 餐價<- cut(mydata$餐價.美元., breaks = breaks, labels = 餐價, right = TRUE )
> mytable<-xtabs(~mydata$質(zhì)量等級+餐價,data=mydata)
> mytable
餐價
mydata$質(zhì)量等級 10~19 20~29 30~39 40~49
好 13 14 1 0
很好 9 22 17 2
優(yōu)秀 1 4 9 8
> par(family='STXihei')
> barplot(mytable,main='質(zhì)量等級和餐價數(shù)據(jù)的復(fù)合條形圖',xlab='餐價($)',
ylab='頻數(shù)',col=c('red','yellow','green'),legend.text=c("好",'很好','優(yōu)秀'),
beside=TRUE)
4.將barplot()函數(shù)中的參數(shù)beside=TRUE去掉歹篓,得到堆積條形圖龙宏,與餅圖類似可顯示每一組餐價中各質(zhì)量等級飯店的頻數(shù)分布。
> par(family='STXihei')
> barplot(mytable,main='質(zhì)量等級和餐價數(shù)據(jù)的堆積條形圖',xlab='餐價($)',
ylab='頻數(shù)',col=c('red','yellow','green'),legend.text=c("好",'很好','優(yōu)秀'))
總結(jié)如何選擇合適的圖形
用于展示數(shù)據(jù)分布的圖形顯示:
- 條形圖:用于展示分類型數(shù)據(jù)的頻數(shù)分布和相對頻數(shù)分布
- 餅形圖:用于展示分類型數(shù)據(jù)的相對頻數(shù)分布和百分?jǐn)?shù)頻數(shù)分布
- 打點圖:用于展示數(shù)值型數(shù)據(jù)在整個數(shù)據(jù)范圍內(nèi)的分布
- 直方圖:用于展示數(shù)值型數(shù)據(jù)在一個區(qū)間組集合上的頻數(shù)分布
用于進行比較的圖形顯示:
- 復(fù)合條形圖:用于兩個變量的比較
- 結(jié)構(gòu)條形圖(堆積條形圖):用于比較兩個分類變量的相對頻數(shù)和百分?jǐn)?shù)頻數(shù)
用于展示相關(guān)關(guān)系的圖形顯示:
- 散點圖:用于展示兩個數(shù)量變量的相關(guān)關(guān)系
- 趨勢圖:用于近似散點圖中數(shù)據(jù)的相關(guān)關(guān)系