R

フルマラソンの完走タイム

r

あまりの運動不足から最近ランニングをはじめ、継続するための目標としてフルマラソンを走ってみたいと思っている。 フルマラソンをとても走れるとは思えなかったが、調べると意外と走れるようである。 走れるといってもそう簡単にできるものではないので、…

mapviewで躓いたので備忘録

mapviewの躓いた点の備忘録 久しぶりにmapviewパッケージをを触ったら躓いたので、メモ。 利用するライブラリ library(tmap) library(leaflet) library(mapview) 利用するデータ data("franconia") class(franconia) [1] "sf" "data.frame" 描画対象物の色を…

nestしたデータフレームの扱い

nestしたデータフレームを扱い方(メモ用) library(tidyverse) iris %>% group_by(Species) %>% nest() %>% mutate(data = map2(data, Species, ~mutate(.x, Species_index = as.numeric(.y)))) %>% mutate(id = seq(1,3)) %>% mutate(data = map2(data, id…

ルート探索

# 必要なライブラリのロード library(tidyverse) library(sf) library(mapview) library(stplanr) library(OpenStreetMap) # 2地点間のポイントデータ作成 sfd = tribble(~lat,~lon,~location, 36.075411, 136.212213,"福井大学", 36.062244, 136.223214, "…

GeoPackageが便利

R sf

GISで利用するデータのファイル形式について、 これまでいろいろな不満がありながらも、 そのほかの代替手段を知らずやむを得ずシェープファイルを利用していた。 たまたま、sfパッケージの入出力 について調べていたら、GeoPackageというファイル形式がある…

sf vignette 6

r sf

Rのsfパッケージの vignette6について、 これまでのvignetteで書けなかったことなどを雑多に書いてあるので、 あまりまとまりがない感じである。 EPSGとは EPSGは空間座標参照システムとしてよく知られており、 IOGP (International Association of Oil & Ga…

福井の豪雪

気象庁の過去の気象データから福井の豪雪についてみてみる。 とりあえず1,2月の累積降雪量の推移を見てみる。 降雪量が多いのももちろんであるが近年まれにみる急激な降雪量の増加があったことがわかる。 また、この時期にはあまり降らないことが多いとかん…

sfクラスのデータに関する隣接関係の計算に関するメモ

rにおける空間情報を扱うにあたり、最近はsfパッケージが速くて便利である。 さて、sfクラスののデータに対して隣接関係を用いて分析等を行いたいときはどうすればよいのだろうか。 旧来のspパッケージでいうとspdepパッケージがそれらに関する関数が充実し…

prophetでガソリン価格の予測

prophetパッケージを利用してみようということで、 とりあえずvignetteにあるものをデータを変えて実行してみた。 ガソリン価格の予測を行う 資源エネルギー庁のHPから給油所小売価格調査(ガソリン、軽油、灯油)の週次データを取得し、 レギュラーガソリン…

tmapパッケージはしばらく更新がないらしい

先日tmap(version 1.11)の更新通知が来ていた。 たまたまNewsを確認したところ下記のような記載があり、 sfパッケージがspに置き換わるまでしばらく更新はなさそうである。 NOTE: this will be the last version before the major update (in which sf fully…

tmapパッケージはしばらく更新がないらしい

先日tmap(version 1.11)の更新通知が来ていた。 たまたまNewsを確認したところ下記のような記載があり、 sfパッケージがspに置き換わるまでしばらく更新はなさそうである。 NOTE: this will be the last version before the major update (in which sf fully…

国立大学の職位別の人数と年齢構成

文科省では学校教員統計調査というのをやっているらしい。 最新だと平成28年の実施結果がe-statにて公開されているので、可視化してみた。 詳しいことはわからないが、 男性は職位と人数が反比例しているが、 近年の女性活躍させるという政策の下?、女性は…

高速にggplotする

r sf

ここ(Accelerating ggplot2: use a canvas to speed up plots creation)にあるように、 ベースマップを作成しておくことで高速な描画が期待できる。 library(tidyverse) library(sf) nc <- read_sf(system.file("shape/nc.shp", package="sf")) nc_p <- st…

行番号(名前)をデータフレームに追加する

r

これまではtibble::rowid_to_column()を利用してきたが、この処理をもう少し早くする必要が出てきてしらべていたら、dplyr::add_rownames()の存在を知り、速度比較したらあやかったので今後はこれを使うことにする。 library(tidyverse) library(microbenchm…

RQGISを利用してみる

RQGISパッケージを利用することでQGISの関数を利用することができる。 インストール方法はvignetteにまとめられているので、そちらを参考に進めるとインストールできる。 ger <- raster::getData(name = "GADM", country = "DEU", level = 1) library(sp) li…

学会名鑑による建築・土木系学会の会員数

日本の学会を調べるのに便利?な学会名鑑というものがある。 分野ごとに学会を調べられるので、土木工学・建築学に絞ってスクレイピングし、 学会の会員種別ごとの人数を調べてみた。 土木学会、日本建築学会がメジャーな学会であることがわかる。 7位には土…

建設総合統計の可視化

国土交通省では、国内の建設活動を出来高ベースで把握することを目的に建設総合統計を毎月発表している。 気が向いたので、ちょっと可視化してみた。 使用するデータは2017/9/19に発表された2010年4月から2017年7月分までのデータを利用する。 都道府県別の…

sf::read_sf()とrgdal::readOGR()とtmaptools::read_shp()の速度比較

Rでシェープファイルデータを読込むための関数でどれが一番速度が速いか比較する。 library(sf) library(tmaptools) library(rgdal) library(microbenchmark) rfile <- system.file("shape/nc.shp", package="sf") microbenchmark(sf::read_sf(rfile), sf::s…

mapview::mapview()の引数オプション

mapview::mapview()で利用する引数に関するメモ。 library(mapview) library(sf) nc <- read_sf(system.file("shape/nc.shp", package="sf")) mapview(nc, zcol="AREA", # 色分けするデータ(列) #color="blue", # ラインの色 #col.regions="red", # ポリゴ…

sfオブジェクトをggplot()する場合はgeometryカラムの名前に注意

geom_sf()関数を利用するにあたり geometryカラムがgeometryではなくgeomの場合にはエラーが出た。 解決方法のメモ。 library(sf) library(ggplot2) library(spData) data(world) head(world) Simple feature collection with 6 features and 10 fields geom…

facet_wrap()利用時にすべてのデータを表示させておく

ggplot2においてfacet_wrap()関数は便利であり利用頻度が高いが、 当該分類データ以外のデータを背景として表示させ、 分布状況をより明快にしたい場合がある。 library(ggplot2) library(dplyr) mtcars %>% ggplot(aes(disp, mpg)) + geom_point()+ facet_w…

特定の値をNAに置き換える(またはNAを特定の値に置き換える)

国土数値情報からダウンロードしたメッシュデータの中にはunknownという値が含まれており、 各フィールドはキャラクターとして認識され、意図している数値型として認識されていない事例に遭遇した。 皆さんどうしてるんですかね? とりあえずunknownという値…

read_sf()とst_read()

r sf

st_read()とread_sf() 最近read_sf()という関数を知った。 st_read()との違いに関してメモ。 read_sf()の関数について確認すると以下のようになっており、 quiet=TRUE, stringsAsFactors=FALSEでデータを読み込んでいる。 library(sf) library(dplyr) read_s…

sfパッケージによる空間データの操作

r sf

利用パッケージ library(sf) library(tidyverse) library(viridis) library(jpndistrict) データの準備 fukuoka <- jpndistrict::spdf_jpn_pref(code=40) class(fukuoka) [1] "SpatialPolygonsDataFrame" attr(,"package") [1] "sp" spクラスからsfクラスへ…

ggplot2でグループごとの図を出力する

ggplotでグループごとに図を出力したい場合がある。 意外と簡単な方法でできるのでメモ。 stackoverflow.com library(ggplot2) library(dplyr) res <- iris %>% group_by(Species) %>% do( plots= ggplot(data=.) + geom_point(aes(Sepal.Length, Petal.Leng…

また株価で遊んでみた

r

ここで取得した株価で遊んでみた。 ooooooha.hatenablog.com 建設業関連の株価の終値の増加率の累積地を可視化してみた。 全体的に株価が上昇しているのがわかる。 塩漬けでも投資しておけば小遣い程度は稼げたんだろうな。 これをみると景気拡大期間バブル…

Rでインタラクティブな地図表示はmapviewで十分

たまたまmapviewパッケージのヘルプ(example)をみていたら、 mapview()関数を + でつないでいく方法があることを知った。 もう単なる地図表示だけとりあえず表示してインタラクティブに確認したい場合は これを使えば十分そう。 ただし、データ容量の大きい…

ポリゴン内にテキスト(ラベル)を表示する

ポリゴン内に各ポリゴンの属性を表示したい。 何回か調べているので、メモとして残す。 # using packages library(ggplot2) library(kokudosuuchi) library(sf) library(sp) options(stringsAsFactors = F) # preparation url <- kokudosuuchi::getKSJURL("N…

ここ一年のTOPIX30の株価(終値)の推移

ここ一年のTOPIX30の株価(終値)を可視化してみた。 便利なパッケージがあるらしいが、うまく機能しなかった。 yahooではスクレイピングを禁止しているらしい、 また、させないように仕様を頻繁に?変更しているらしいので、 そのほかでできそうな記事を参…

自作関数の高速化

efficient R programingを読んでいて今後使えそうなことに関するメモ。 3.7 では自作関数の高速化について述べられている。 自作関数にcompiler::cmpfun()を適用すればよいだけらしい。 library(compiler) mean_r = function(x) { m = 0 n = length(x) for(i…