library(ggmap) for (i in 1:nrow(data)) { if (data$lat[i] == 0) { addr <- data$service_addr[i] url = paste('http://maps.google.com/maps/api/geocode/xml?address=', addr,'&sensor=false',sep='') doc = xmlTreeParse(url) root = xmlRoot(doc) data$lat[i] = xmlValue(root[['result']][['geometry']][['location']][['lat']]) data$lng[i] = xmlValue(root[['result']][['geometry']][['location']][['lng']]) } } # 將 data 內容寫入檔案 mymap.csv write.table(data, file = "mymap.csv", sep = "," ) #
2017年2月21日 星期二
R 以地址取得經緯座標值
假如data.frame data中的lat值為0時,則利用google maps api geocode 查詢地址的經緯座標,並存回 data$lat 與 data$lng 中:
2017年2月20日 星期一
取得政府資料開放平台資料資源,將資料分類統計以R語言繪製成圓餅圖
library(data.table) # 取得政府資料開放平台資料資源 (file format = csv) data <- fread("http://search.data.gov.tw/wise/query?q=%2A%3A%2A&export=true&format=csv&rows=2147483647&d=1", header="auto", encoding = "UTF-8") # 統計資料分類及分類數量, 統計結果以 data.frame 儲存至 categories categories <- as.data.frame(table(data$服務分類)) # 計算每個分類百分比,取小數點第2位,將結果存於 pct pct <- round(categories$Freq/sum(categories$Freq)*100,2) # 把原來的分類"名稱 百分比 %" 存回原來的名類名稱中 categories$Var1 <- paste(categories$Var1, pct, "%", sep=" ") #繪製圓餅圖 Piechart pie(categories$Freq, labels=categories$Var1, main="政府資料開放平台資料資源", col=rainbow(length(categories$Var1)))
執行結果:
標籤:
2017,
程式,
programming,
R
訂閱:
文章 (Atom)