曾經有一位專家說過
與其他任何設備相比,簡單的圖形為資料分析師帶來了更多的資訊。
不好意思!是誰說還真的忘記 首先開啟並按裝該有的套件 開啟Rstudio
當然您也可以輸入指令進行安裝
安裝完成後載入套件
資料欄位的說明可輸入?mpg 出現下圖
對於資料科學而言欄位是很重要的資訊 對於我們了解該資料集是第一步重要資訊
在學習的過程中發現有很多不同的名詞 對於資料科學的人變量或變數 對於統計的人
會說變項 對於學MIS會說欄位 其實都是說同一件事就是欄位 當初被這些名詞
搞得霧煞煞.......
完成上述 讓我們來發覺引擎的大小在高速公路上是否耗油 一般人直覺會說會!
但這是個人的感覺 我們用資料科學的圖形來說話
輸入˙ggplot(data=mpg)+
geom_point(mapping = aes(x=displ,hwy)))
出現下圖
從上圖可以看到答案是引擎的大小在高速公路行駛的確是耗油 displ為引擎cc數 hwy為高速公路
每加淪行駛的英哩數 從散點圖可以看到引擎數愈大行駛的英里數愈少 其中引擎6000cc每加侖
只能跑15英里 而引擎2000cc每加侖可跑到32英里 兩者之間相差17英里。
我們再提出第二個假設 汽車的汽缸數多寡在高速公路行駛上是否會影響油耗
輸入:ggplot(data=mpg)+
geom_point(mapping = aes(x=cyl,y=hwy))
出現下圖
從上圖中我們可發現mpg資料集的汽缸數四種類型,分別有4汽缸、5汽缸、6汽缸、8汽缸
從4汽缸來看每加侖最低可跑到20英里 而8汽缸每加侖最低只能跑到3英里 從圖形來看
汽缸數多寡會影響油耗的表現
當然我們可提出更多的假設來進行探索 而上述我們只是單純用散點圖集黑色圓點作呈現
若我們將顏色對應到資料集中其他變項中 是否會有更多的發現
因此我們以第一個範例引擎大小行駛高速公路上是否會耗油例子 將車子的類型對應到顏色
輸入ggplot(data=mpg)+
geom_point(mapping = aes(x=displ,y=hwy,color=class))
我們可以看到車子類型的變項名稱為class包括雙人車、皮卡、suv等等
藉由顏色對應更進一步了解車的類型、引擎大小、高速公路行駛的油耗
當然也可做進一步的變化使用size來對應,會以實心圓圈表示 圓圈愈大表示資料愈大
輸入ggplot(data=mpg)+
geom_point(mapping = aes(x=displ,y=hwy,size=class))
從上圖可以了解美國車子哪類型車子使用較多 以SUV及皮卡車子的種類較多人使用
在執行中會出現一句警告size不建議使用離散變量
上述我們以三個變量進行對資料的探索 那我們可已使用五個變量進行探索嗎?
答案是可以!在ggplot稱為構面 facet_wrap
輸入ggplot(data = mpg)+
geom_point(mapping = aes(x=displ,y=hwy,color=class))+
facet_wrap(drv~cyl)
上圖中可以發現我們使用了五個變量對車子的引擎大小(displ)、高速公路油耗(hwy)、類型
(class)、汽缸數(cyl)、車子的驅動方式(drv)來探索 更清楚每種油耗的表現
在構面facet_warp參數中有看到~(蟲字號),當初我以為他是從drv變量到cyl間的所有變數
進行計算,結果查了許多資料才發現 ~ 是分為兩個變數的意思 那為什麼不使用逗號區隔
關於這各問題就要問套件開發者,為甚麼提到這個問題因為這個蟲字號困擾我很久。
當然我也可以變化一下
輸入:ggplot(data = mpg)+
geom_point(mapping = aes(x=displ,y=hwy))+
facet_wrap(~class,nrow = 2)
在上面程式碼中發現~class代表的意思為前面沒有變量,目前只有一個變量,那可不可以寫成
class~可以試一下,規定蟲字號在前變量在後(對於一個變量而言);nrow=2為使用2行作呈現
對於facet_warp構面而言可以加入資料集所有的變量,對於mpg在facet_warp我加入四個變量
大家可以試一下。
最後,上述是R圖形繪製語法很簡單,在未來繪製R困難的圖形,都是由上述語法
作為基礎延伸而來,若上述未能了解後面對R圖形繪製會感到很挫折,這是我小小心得
可能有些大神並不怎麼認為,後面在分享更進一步ggplot的曲線圖形,對於資料探索更視覺化。