最近看到嘉義的黑蚵松獎金有點誘人,感覺這資料可能是奪冠的元素之一,於是又不務正業了。
library(rvest)
options(stringsAsFactors = F)
url <- "http://tisvcloud.freeway.gov.tw/history/TDCS/M08A/20170529/"
dat <- read_html(url)
dat <- html_table(dat)
urls <- paste0(url, dat[[1]]$Name[-1])
dat <- lapply(urls, function(x){
html_table(read_html(x))[[1]][-1,]
})
files <- c()
for(i in seq_along(dat)){
files <- c(files, paste0(urls[i], dat[[i]]$Name))
}
df <- lapply(files, read.csv, header=F) %>% do.call("rbind", .)
tmp <- pdftools::pdf_text("~/Downloads/TDCS使用手冊(tanfb)v3.0-1.pdf")
library(stringr)
id <- str_extract_all(tmp, "0[0-9][0-9A-Z]{5,5}[A-Z]")[-(1:9)] %>% unlist()
inter <- str_extract_all(tmp, "\\(.*")[-(1:9)] %>% unlist()
inter <- data.frame(id, inter)
rownames(inter) <- inter$id
df$V2 <- inter[df$V2, "inter"]
df$V3 <- inter[df$V3, "inter"]
colnames(df) <- c("報表產製時間","起點","迄點","車種")
length(grep("苗栗",df$起點))
## [1] 11157
length(grep("苗栗",df$迄點))
## [1] 10867
# 31(小客車) 、32(小貨車) 、41(大客車) 、42(大貨車) 、5(聯結車)
table(df$車種)
##
## 5 31 32 41 42
## 46522 805566 370184 29405 66755
table(df$車種[grep("苗栗",df$起點)])
##
## 5 31 32 41 42
## 181 7402 3068 135 371
table(df$車種[grep("苗栗",df$迄點)])
##
## 5 31 32 41 42
## 180 7224 2908 153 402
table(df$車種[grep("南州",df$起點)])
##
## 5 31 32 41 42
## 285 12253 5322 495 529
table(df$車種[grep("南州",df$迄點)])
##
## 5 31 32 41 42
## 300 7806 3612 263 470
因為是不務正業而我又三分鐘熱度,所以還是開個頭就好,有興趣的多玩看看,eTag的資料感覺很多寶可以挖。剛剛本來想把這資料做地圖視覺化,不過找不到偵測站對應的經緯度,自己用Google API又有部分找不到。