R教學第9章:尋找和取代資料

文章推薦指數: 80 %
投票人數:10人

下一篇教學,我們要教你如何把處理完畢的資料,輸出成一份CSV檔,以及把你寫的R script存成以後可以重複使用的程式檔。

sixToTen R r language data ... DataMan的資料視覺化筆記R教學目錄   March18,2016 R教學第9章:尋找和取代資料在上一篇教學中,我們學會了如何從資料欄中取出你想要的部分,並創造新的欄,或者把兩欄合併成一欄。

今天,我們要來學所謂的「尋找與取代」,找出含有特定關鍵字的資料列(例如找出所有「鄉」),以及用正確的資料取代錯誤資料(例如把全部「台北縣」改成「新北市」)。

如果大家還留著上次存好的pop.RData的話,就用我們之前教的方法讀取pop.RData。

沒留著的話,這裡是CSV檔的連結。

完成讀取之後,你的RStudio應該長這個樣子:先來看看pop:View(pop) 如果我們要找出pop中所有的鄉,你可能會想到上一堂課學到的substr函數:只要比對所有資料列的「區域別」的最後一個字,是否等於「鄉」,再把比對成功的資料列拿出來就可以了。

很可惜的是,substr並沒辦法指定最後一個字:還記得我們是怎麼指定第幾個字的嗎?我們是從一段文字的最前面開始算起。

由於有些「鄉」的名字有四個字,例如「臺東縣太麻里鄉」,如果我們指定「區域別」的第六個字,比對是否為「鄉」,那「臺東縣太麻里鄉」就被我們漏掉了,因為「臺東縣太麻里鄉」的「鄉」字是在第七個字。

雖然有其他的函數,可以讓我們指定一段文字的最後一個字,不過因為那個函數需要安裝額外的功能,而我們到現在都還沒教怎麼幫R安裝額外功能,因此我們之後再教那個方法。

今天,我們先用grep函數解決問題:pop_shiang



請為這篇文章評分?