2014年5月8日 星期四

[R]用R轉換資料結構-將矩陣型資料轉為一般資料格式

        之前抓了氣溫資料,但是因為解釋力不強,所以又開始到處找變數,這次看上的是雨量資料。這次雨量資料本國氣象局的網站就有提供了!
(中央氣象局  http://www.cwb.gov.tw/V7/climate/dailyPrecipitation/dP.htm)。
   
        這次的雨量資料非常詳細,不但有年份,月份,還有每日的資料,相當符合需求。但是天下沒有白吃的午餐,雨量資料的格式是沒有辦法直接與之前的資料結合並且進行分析的。雨量資料是採用類似九九乘法表、矩陣資料的形式,月份和日期各站一邊,兩者的交叉點就是當天的雨量資料。但是一般要進行統計分析,需要的資料格式是CASE和欄位。
例如第一欄式日期,第二欄是雨量,每個CASE代表了某個特定日期的雨量。手工一點,我們當然可以把整個表格抓下來,然後再EXCEL裡面複製貼上將表格貼成我們要的格式,但是我們有三個年份的資料,這樣做太瞎了,所以只好偷懶寫程式碼轉換資料。


        首先我們要把資料抓下來,這次因為只有三個分頁,我就直接把表格抓下來變成CSV檔案存好,之後再用R來讀取,程式碼請見:

這個做法相對單純,只要搞懂雙重迴圈的走法就可以輕鬆轉換。

圖片來源:http://www.cwb.gov.tw/V7/climate/climate_info/statistics/statistics_1_2.html