災害時の避難所におけるトイレの環境をビッグデータとICTを利用して改善するための提案の1つとして、平成28(2016)年の熊本地震で特に被害の大きかった南阿蘇市を例に、分析を行い、そのデータや結果について視覚化した。
データ分析には、統計解析環境であるR言語および、地図に描画するためのパッケージであるleaflet等を用いた。
> library(rgdal)
> library(leaflet)
> library(classInt)
> library(RColorBrewer)
> library(knitr)
南阿蘇村における避難所・避難場所および収容人数等については、国土交通省の「」(現在サーバーが落ちている)を、南阿蘇村における実際の避難の状況については南阿蘇村ホームページの平成28年熊本地震に関する情報のうち「避難者数について(最新版)」を用いた(http://www.vill.minamiaso.lg.jp/site/28kumamotozisinn/h28nenhinannsyozyouhou.html)。
> k1<- readOGR("shp/P20-12_43.shp", layer = "P20-12_43")
OGR data source with driver: ESRI Shapefile
Source: "shp/P20-12_43.shp", layer: "P20-12_43"
with 1969 features
It has 17 fields
熊本県のデータから、南阿蘇村だけを抽出し、必要な変数だけを選別した。
> ad1 <- unique(k1@data$P20_003)
> ad2 <- ad1[grep("(南阿蘇)", ad1)]
> k2 <- subset(k1, subset = (k1@data$P20_003 %in% ad2) )
> k3 <- data.frame(name = k2@data$P20_002,
+ address = k2@data$P20_003,
+ lat = k2@data$緯度,
+ long = k2@data$経度,
+ type = k2@data$P20_004,
+ seat = k2@data$P20_005)
緯度・経度の中央値より中心を決め、避難所・避難場所を描画した。 なお、このデータでは、南阿蘇村はすべて避難所で、収容人数は0。
> k3.lat.m <- median(with(k3,lat))
> k3.long.m <- median(with(k3,long))
> leaflet(k3)%>%setView(lng=k3.long.m,lat=k3.lat.m,zoom=12) %>% addTiles() %>% addMarkers(lng=~long,lat=~lat)
南阿蘇村のホームページより避難所データを抽出(現在鋭意実行中) ひとまず、一部のデータだけの、しかも2016年4月16日8時時点です。
> m1 <- read.csv("minamiaso.csv")
> m2 <- m1[c(1,2,5,10,11),]
> kable(m2)
| ID | name | add | lat | long | flg | X04.16.08 | X04.16.10 | X04.16.16 | X04.16.19 | |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 1 | 久木野福祉センター | 熊本県阿蘇郡南阿蘇村大字久石2705 | 32.82039 | 131.0361 | 1 | 80 | 250 | 300 | NA |
| 2 | 2 | 久木野総合センター | 熊本県阿蘇郡南阿蘇村大字河陰151-1 | 32.82248 | 131.0314 | 1 | 12 | 46 | NA | NA |
| 5 | 5 | 堀渡公民館 | 熊本県阿蘇郡南阿蘇村大字河陰3759-3 | 32.83860 | 131.0042 | 1 | 40 | 30 | 0 | NA |
| 10 | 10 | 白水体育館 | 熊本県阿蘇郡南阿蘇村大字吉田1007-1 | 32.82723 | 131.0718 | 1 | 64 | 80 | 70 | 60 |
| 11 | 11 | 白水保健センター | 熊本県阿蘇郡南阿蘇村大字吉田1495 | 32.82553 | 131.0817 | 1 | 150 | 280 | 230 | NA |
> leaflet(m2)%>%setView(lng=k3.long.m,lat=k3.lat.m,zoom=13) %>%
+ addTiles() %>% addCircles(radius = ~X04.16.08*3, weight=1, color="#FF0000",
+ fillColor = "#FF0000", fillOpacity=0.7, popup = ~paste(name,"<BR>","推計人数: ",X04.16.08,"人",sep=""))