地震の頻度
tenki.jpのデータから3月の地震頻度を集計して分析しました。
今回は関東地方と東北地で起こった地震のマグニチュードの頻度を1日単位で示します。
関東地方と東北地方の地震頻度ですが、11日より12日の方が回数が多くなっています。
これは東北太平洋沖地震が起きたのが午後2時過ぎであったためでしょう。
余震の回数は関東も東北も同じくらいで、回数的には収束していってるように見えます。
次にマグニチュードの大きさで分類してヒストグラムを描きます。
M5クラスの強い地震の回数が少しずつ減っているように見えます。
ですが東北地方では22~25日にM6の地震が起こっています。
まだ注意は必要かもしれません。
tenki.jpからコピペでエクセルデータにして、csvデータに加工したデータをダウンロードにアップします。
以下のプログラムのread.csvの部分をダウンロードされた地震データのパスに設定すれば、今回の解析と同じものが再現できます。
宜しければお試しください。
Jishin <- read.csv("地震.csv", as.is = T) Jishin$Mag <- as.numeric(substr(Jishin$M, 2, 5)) Jishin$Time <- as.numeric(strptime(paste(paste(Jishin$月, gsub("日", "", Jishin$日), substr(Jishin$年, 3, 4), sep = "/"), Jishin$発生時刻), "%m/%d/%y %H:%M:%S")) Jishin$Eng <- 10 ^ (4.5 + 1.5 * Jishin$Mag) table(Jishin$震源地) Jishin$地域 <- ifelse(regexpr("愛知", Jishin$震源地) != -1, "関東", ifelse(regexpr("伊豆", Jishin$震源地) != -1, "関東", ifelse(regexpr("茨城", Jishin$震源地) != -1, "関東", ifelse(regexpr("奄美", Jishin$震源地) != -1, "関東", ifelse(regexpr("岩手", Jishin$震源地) != -1, "東北", ifelse(regexpr("岐阜", Jishin$震源地) != -1, "中部", ifelse(regexpr("宮城", Jishin$震源地) != -1, "東北", ifelse(regexpr("京都", Jishin$震源地) != -1, "関西", ifelse(regexpr("群馬", Jishin$震源地) != -1, "関東", ifelse(regexpr("三重", Jishin$震源地) != -1, "関西", ifelse(regexpr("三陸", Jishin$震源地) != -1, "東北", ifelse(regexpr("山形", Jishin$震源地) != -1, "東北", ifelse(regexpr("山梨", Jishin$震源地) != -1, "関東", ifelse(regexpr("滋賀", Jishin$震源地) != -1, "関西", ifelse(regexpr("秋田", Jishin$震源地) != -1, "東北", ifelse(regexpr("新潟", Jishin$震源地) != -1, "東北", ifelse(regexpr("神奈川", Jishin$震源地) != -1, "関東", ifelse(regexpr("青森", Jishin$震源地) != -1, "東北", ifelse(regexpr("静岡", Jishin$震源地) != -1, "関東", ifelse(regexpr("長野", Jishin$震源地) != -1, "中部", ifelse(regexpr("東京", Jishin$震源地) != -1, "関東", ifelse(regexpr("栃木", Jishin$震源地) != -1, "関東", ifelse(regexpr("福島", Jishin$震源地) != -1, "東北", ifelse(regexpr("兵庫", Jishin$震源地) != -1, "関西", ifelse(regexpr("千葉", Jishin$震源地) != -1, "関東", ifelse(regexpr("熊本", Jishin$震源地) != -1, "九州", ifelse(regexpr("宮崎", Jishin$震源地) != -1, "九州", ifelse(regexpr("広島", Jishin$震源地) != -1, "中国", ifelse(regexpr("島根", Jishin$震源地) != -1, "中国", ifelse(regexpr("トカラ", Jishin$震源地) != -1, "九州", ifelse(regexpr("千葉", Jishin$震源地) != -1, "関東", ifelse(regexpr("新島", Jishin$震源地) != -1, "関東", ifelse(regexpr("西表", Jishin$震源地) != -1, "九州", ifelse(regexpr("宮古", Jishin$震源地) != -1, "九州", ifelse(regexpr("和歌山", Jishin$震源地) != -1, "関西", "その他"))))))))))))))))))))))))))))))))))) table(Jishin$地域) Jishin[Jishin$地域 == "その他",] Chiiki <- names(table(Jishin$地域)) #---histogram hist(Jishin$Mag) hist(Jishin$Eng) Jishin2 <- Jishin[Jishin$月 == 3, ] table(Jishin2$日, Jishin2$地域) table(Jishin2$日, trunc(Jishin2$Mag), Jishin2$地域) library(gridExtra) library(ggplot2) #---hist a <- table(Jishin2$日, Jishin2$地域) b <- data.frame(日 = factor(as.numeric(rownames(a))), 回数 = a[, 7], 地域 = "東北") b <- data.frame(rbind(b, data.frame(日 = factor(as.numeric(rownames(a))), 回数 = a[, 3], 地域 = "関東"))) b$地域 <- factor(b$地域) ggplot(b, aes(日, 回数, fill = 地域)) + geom_bar(position="dodge") + opts(title = "3月の地震頻度") c <- table(Jishin2$日, trunc(Jishin2$Mag), Jishin2$地域)[,,7] d <- data.frame(日 = factor(as.numeric(rownames(c))), マグニチュード = 1, 回数 = c[, 1]) for(i in 2:7){ d <- data.frame(rbind(d, data.frame(日 = factor(as.numeric(rownames(c))), マグニチュード = i, 回数 = c[, i]))) } d <- data.frame(rbind(d, data.frame(日 = factor(as.numeric(rownames(c))), マグニチュード = 9, 回数 = c[, 8]))) d$マグニチュード <- factor(d$マグニチュード) ggplot(d, aes(日, 回数, fill = マグニチュード)) + ylim(0, 70) + geom_bar() + scale_fill_brewer(type = "div") + opts(title = "東北地方 3月") e <- table(Jishin2$日, trunc(Jishin2$Mag), Jishin2$地域)[,,3] f <- data.frame(日 = factor(as.numeric(rownames(e))), マグニチュード = 1, 回数 = e[, 1]) for(i in 2:7){ f <- data.frame(rbind(f, data.frame(日 = factor(as.numeric(rownames(e))), マグニチュード = i, 回数 = e[, i]))) } f <- data.frame(rbind(f, data.frame(日 = factor(as.numeric(rownames(e))), マグニチュード = 9, 回数 = e[, 8]))) f$マグニチュード <- factor(f$マグニチュード) ggplot(f, aes(日, 回数, fill = マグニチュード)) + ylim(0, 70) + geom_bar() + scale_fill_brewer(type = "div") + opts(title = "関東地方 3月") d$地域 <- "東北地方" f$地域 <- "関東地方" g <- rbind(d, f) ggplot(g, aes(日, 回数, fill = マグニチュード)) + ylim(0, 70) + geom_bar() + scale_fill_brewer(type = "div") + opts(title = "東北&関東地方 3月") + facet_grid(地域~.)