また株価で遊んでみた

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…

tmapとggplot2の出力結果の比較

空間データのプロット sfやspクラスオブジェクトのデータをプロットする方法について tmapとggplot2パッケージによる出力を比較してみる。 library(tmap) library(sf) library(mapview) library(ggplot2) spクラスオブジェクトとsfクラスオブジェクトの2つを…

行の結合にはrbind.fill()が便利

各データフレームを行で結合したい場合がある。 列で結合する場合はleft_join()などのjoin関数がある。 データがない部分はNAで保管される。 library(plyr) rbind.fill(mtcars[c("mpg", "wt")], mtcars[c("wt", "cyl")]) mpg wt cyl 1 21.0 2.620 NA 2 21.0 …

leaflet、mapviewパッケージを用いた可視化のコードサンプル

いつも調べながら書いているので、 よく利用するオプションを書いておく # 必要とするパッケージ library(mapview) library(kokudosuuchi) library(tidyverse) library(sp) # データの読込(岐阜県の行政区域) getURL <- kokudosuuchi::getKSJURL("N03", pref…

data.frameからsfクラスのデータを作成する方法

r sf

結論から言うとst_as_sf(data.frame, coords=c(x, y), crs=4612)というように行えばよい library(sp) library(sf) data(meuse) head(meuse) ## x y cadmium copper lead zinc elev dist om ffreq soil lime landuse ## 1 181072 333611 11.7 85 299 1022 7.9…

sfクラスのデータ抽出

r sf

ポリゴン内のポイントまたはポイントがあるポリゴンデータを抽出したい場合がある. 特に難しいことはないが,メモとして残しておく. library(sf) set.seed(1) nc <- system.file("shape/nc.shp", package="sf") %>% st_read nc1 <- nc[1:50, ] nc_points <…

公示価格を可視化してみた

r

国土数値情報の中には「地価公示」のデータがあったので、可視化してみた。 バブリーな時代があったんだなということが改ためて確認できた。 また、東京の一極集中が加速していて、バブル期に迫るくらいに土地の値段が上がっていた。 2017年の各都道府県…

popupTable()の利用に関して

mapview::popupTable()を利用すると、簡単にポップアップを作成でき便利であるが、 windows環境だと文字コードの問題があり?うまく表示できないことが多い。 その際には以下のようにすることで解決することができる。 m_base <- leaflet(options = leafletO…

J-STAGEのWebAPIを利用してみる

J-STAGE WebAPIを利用してみる r Sys.Date() J-stageからWebAPIを利用して論文タイトル等の一覧を取得する J-STAGEは普段使うにはアクセスに時間がかかり使いにくいと思っていたが、 J-STAGE WebAPI が利用できるようなので試してみる。 建築学会の論文集を…

RでのGIS演算時には座標参照系の確認が大切

r gis

RでGIS演算(例えば面積を算出)を行う場合には座標参照系を確認しておく必要がある。 adm_area <- sf::st_read("N03/2016/N03-16_17_160101.shp", crs = 4612, options = "ENCODING=UTF-8") adm_area %>% as(., "Spatial") %>% rgeos::gArea(byid = T) %>% …

st_read()での読み込み時のエンコード指定

r sf

下記のように適宜エンコードを指定すると文字化けを回避することができる。 library(sf) sf::st_read("***.shp", options = "ENCODING=UTF-8")) 詳細はここ

メッシュデータについて

gis

GISデータでメッシュ単位でデータを公開している場合があるが、 メッシュデータにはいくつかの決まり事があるらしい。 詳しくは総務省統計局、パスコのHPやArcGIS Tipsがわかりやすい。 代表的なものとして第1次~第3次メッシュがあり、以下のようになってい…

mapviewパッケージによるインタラクティブな作図

leaflet::leaflet() で基本図の設定を行ったうえで、 mapview::garnishMap()関数を用いることにより様々な図を 重ねていくことができる。 最後にaddLayersControl()により、レイヤーの構成を調整することができる。 library(mapview) library(sf) nc <- st_r…

ポリゴン内のラインデータの抽出(切取り)

r gis

何回も調べたりしているため、メモ。 ポリゴン内のライン長さを出したいときがある。 その際はラインをポリゴンでインターセクトする必要がある。 関数はrgeos::gIntersection()を利用する。 sp::over()関数で行うと意図と異なる結果となるため注意。 (適切…

sf classデータの操作及びプロット

r sf

sfパッケージ(クラス)は空間データを簡単に操作することができ非常に便利である。 spパッケージ(クラス)はそれらを扱う多様なパッケージが存在するが、 自分自身で多少の編集を行うのは少し面倒であった。 Simple Features for Rだけあってデータ操作は…

ggpairs()できれいなペアプロット

pairs()をggplot2風に書けるらしい。 library(tidyverse) library(GGally) iris %>% GGally::ggpairs(data = ., aes(color = Species)) 美しいペアプロット図を簡単に作る

rmarkdwonでの参考文献

ヘッダーは下記のようにする。 --- output: html_document: bibliography: bibdb.bib csl: japan-journal-of-industrial-and-applied-mathematics.csl --- 文章中の参考としたところには[@****]と表示してやればよい。 参考文献のスタイルを指定するcslファ…

sfクラスからSpatial*****DataFrameクラスへの変換

R sf

Rにおけるジオメトリデータの操作は今後sfパッケージが主流になるらしい。 http://notchained.hatenablog.com/entry/2017/01/06/213333 開発が活発なためせっかく整備したコードが今後も使えるという保証はないため, 利用に少しためらいもあるが,最近少し…

dplyrにおける文字コード問題が少しは改善されそう

Rにおける文字コードに関して多くの人々が悩まされている. 例えば,http://notchained.hatenablog.com/entry/2016/04/29/222453 「Why are you using SJIS?」「Why are you using UTF-8?」2種類のことばがあり,処理によってうまく扱う必要があるという苦痛…