Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TokyoR#107_R_GeoData
Search
kilometer
July 15, 2023
Programming
0
390
TokyoR#107_R_GeoData
第107回Tokyo.Rでトークした際の資料です。
kilometer
July 15, 2023
Tweet
Share
More Decks by kilometer
See All by kilometer
TokyoR#111_ANOVA
kilometer
2
830
TokyoR109.pdf
kilometer
1
440
TokyoR#108_NestedDataHandling
kilometer
0
750
SappoRo.R_roundrobin
kilometer
0
120
TokyoR#104_DataProcessing
kilometer
1
660
TokyoR#103_DataProcessing
kilometer
0
850
TokyoR#102_RMarkdown
kilometer
1
610
TokyoR#101_RegressionAnalysis
kilometer
0
350
TokyoR#99_Divergence
kilometer
1
330
Other Decks in Programming
See All in Programming
Outline View in SwiftUI
1024jp
1
320
AWS Lambdaから始まった Serverlessの「熱」とキャリアパス / It started with AWS Lambda Serverless “fever” and career path
seike460
PRO
1
250
A Journey of Contribution and Collaboration in Open Source
ivargrimstad
0
880
Better Code Design in PHP
afilina
PRO
0
120
CSC509 Lecture 09
javiergs
PRO
0
140
CSC509 Lecture 11
javiergs
PRO
0
180
とにかくAWS GameDay!AWSは世界の共通言語! / Anyway, AWS GameDay! AWS is the world's lingua franca!
seike460
PRO
1
860
エンジニアとして関わる要件と仕様(公開用)
murabayashi
0
280
LLM生成文章の精度評価自動化とプロンプトチューニングの効率化について
layerx
PRO
2
190
レガシーシステムにどう立ち向かうか 複雑さと理想と現実/vs-legacy
suzukihoge
14
2.2k
最新TCAキャッチアップ
0si43
0
140
弊社の「意識チョット低いアーキテクチャ」10選
texmeijin
5
24k
Featured
See All Featured
It's Worth the Effort
3n
183
27k
Teambox: Starting and Learning
jrom
133
8.8k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
A designer walks into a library…
pauljervisheath
203
24k
10 Git Anti Patterns You Should be Aware of
lemiorhan
654
59k
Building Your Own Lightsaber
phodgson
103
6.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Six Lessons from altMBA
skipperchong
27
3.5k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
How to Ace a Technical Interview
jacobian
276
23k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Transcript
#107 @kilometer00 2023.03.15 BeginneR Session R & Geostatistics
Who!? Who?
Who!? 名前: 三村 @kilometer 職業: 特任教員 (こうがくはくし) 専⾨: ⾏動神経科学(霊⻑類) 脳イメージング
医療システム⼯学 R歴: ~ 10年ぐらい 近況: 3 & 0歳児, あたらしい職場
宣伝!!(書籍の翻訳に参加しました。) 絶賛販売中! 増刷出来!!
→ スライド資料は全てSpeakerDeckで公開しています。 Tokyo.Rでいっぱい話してきました。
BeginneR Session
BeginneR
Before After BeginneR Session BeginneR BeginneR
BeginneR Advanced Hoxo_m If I have seen further it is
by standing on the shoulders of Giants. -- Sir Isaac Newton, 1676
@kilometer00 BeginneR Session R & Geostatistics
□ Rの基本 □ Geostatisticsの基本
None
IEEE Spectrum’s Top Programming Languages 2022 https://spectrum.ieee.org/top-programming-languages-2022
https://spectrum.ieee.org/top-programming-languages-methods
https://spectrum.ieee.org/top-programming-languages-methods
None
TIOBE Index for July 2023 https://www.tiobe.com/tiobe-index/
https://www.tiobe.com/tiobe-index/
https://twitter.com/hadleywickham/status/1279405379449913344?s=20
https://gist.github.com/daroczig/ Number of R packages ever published on CRAN
https://cran.r-project.org/web/packages/ The Comprehensive R Archive Network (CRAN)
h"ps://www.datasciencemeta.com/rpackages
① 興味を持つ ③ 周りを⾒渡す。 ④ 隣⼈がみつかる。 ② 始めてみる。 ⑤ 隣の芝が⻘く⾒える。
⑥ 始めてみる。 無駄にはならない (賢く⽴ち回ろうとして、外から恐る恐る⾒てるより、⼿を動かして始めてみよう) ⼈⽣は有限で⻘春は瞬きかもしれないけど、⼤丈夫。 プログラミング⾔語の2つや3つを学ぶ時間ぐらいある。
の始め⽅ 1. Rをインストール 2. RStudioをインストール https://www.r-project.org/ https://posit.co/download/rstudio-desktop/
の始め⽅ 3. RStudioを⽴ち上げる 4. 新規プロジェクトを作る 6. tidyverseをインストール install.packages(“tidyverse”) 5. 新規スクリプトを開く
File -> New Project... ⌘ ⇧ N
① ここにRのコードを書く ② 選択して実⾏(⌘↩) ③ 実⾏結果が表⽰ スクリプト → 名前をつけて保存 コンソール
RStudioの操作
① ここにRのコードを書く ② 選択して実⾏(⌘↩) ③ 実⾏結果が表⽰ スクリプト → 名前をつけて保存 コンソール
環境変数などが表⽰ ファイル/プロット/ヘルプなど ⾃動で反映 RStudioの操作
の始め⽅ おすすめパッケージ達 ・ tidyverse (データ科学総合ツール) ・ data.table (大きいデータ取り扱うなら) ・ cmdstanr
(ベイズ統計やるなら) ・ patchwork (データ可視化やるなら) 最初から全部いれる必要はないよ!
の基本
例えばExcelでは、 セルの内部に関数を書いて 結果だけを表⽰する
例えばExcelでは、 セルの内部に関数を書いて 結果だけを表⽰する どこまでが共通の属性なのか 直感的な配置から読み取る
の基本 a <- 5 x <- 1:5 y <- a
* x 代⼊演算⼦ オブジェクト コード
選択して実⾏(⌘↩) ⾃動で反映 実⾏内容 書く
の基本 Q. オブジェクトの中⾝が⾒たい時はどうするの? A. オブジェクト名だけを選択して実⾏します。
実⾏(⌘↩)
の基本 Q. オブジェクトの中⾝が⾒たい時はどうするの? A. オブジェクト名だけを選択して実⾏します。 Q. 既にある表データをRに読み込みたいんですが? A. read_csv()関数を使います。
の基本 path <- “data/Book1.csv” read_csv(path)
実⾏(⌘↩) エラー:そんな関数ないよ
Don’t worry!!!
の基本 CRAN The Comprehensive R Archive Network
install.packages(“tidyverse”) の基本 1. パッケージのインストール 2. インストールされたパッケージを使う library(tidyverse)
実⾏(⌘↩) 読み込めたけど... コレとコレ は省きたい (データじゃない)
Don’t worry!!!
の基本 library(tidyverse) path <- “data/Book1.csv” read_csv(path)
の基本 library(tidyverse) path <- “data/Book1.csv” read_csv(path, skip = 2)
None
いちいちcsvに出⼒するの⾯倒だから エクセルファイルのまま読み込みたいなぁ。
Don’t worry!!!
library(tidyverse) path <- “data/Book1.xls” read_xlsx(path, skip = 2) の基本
エラー:そんな関数ないよ
Don’t worry!!!
library(tidyverse) library(readxl) path <- “data/Book1.xls” read_xlsx(path, skip = 2) の基本
そんな名前のファイル無いよ
無いことないだろ!!!?? さっき作ったばっかりだぞ!!
無いことないだろ!!!?? さっき作ったばっかりだぞ!! ほら!!!!!!
無いことないだろ!!!?? さっき作ったばっかりだぞ!! ほら!!!!!! 😇 ほら...ぁ...
library(tidyverse) library(readxl) path <- “data/Book1.xlsx” read_xlsx(path, skip = 2) の基本
😇 できた
プログラムは思った通りには動かない。 書いた通りに動くのだ。 誰が⾔ったか知らないが、
表データの加⼯と可視化の概観 Long Wide Nested plot Figures Data table read_csv write_csv
pivot_longer pivot_wider group_nest unnest ggplot ggsave wrap_plots map
□ Rの基本 □ Geostatisticsの基本 ✔
データ視覚化の⼈類史 グラフの発明から時間と空間の可視化まで Michael Friendly Howrad Wainer 飯嶋貴⼦ (訳) ⻘⼟社, 2021
データ視覚化の⼈類史 グラフの発明から時間と空間の可視化まで Michael Friendly Howrad Wainer 飯嶋貴⼦ (訳) ⻘⼟社, 2021
何かを理解しようとするならば、 その始まりと推移を観察しなさい -- アリストテレス『形⽽上学』 本書 p.21
主題図 Thematic map テーマに対して、必要な主題データを利⽤して分析した結果や、 複数の主題データを重ね合せて表現した地図 h"ps://www.esrij.com/gis-guide/maps/thema6c-map/ h"ps://www.ny6mes.com/interac6ve/2016/06/24/world/europe/how-britain-voted-brexit-referendum.html
最初の主題図「新ヨーロッパ地図」 アウグスト・クローム (独) ⽇本最初の主題地図帳 「⼤⽇本帝国地産要覧図」 最古の世界図 バビロニアの粘⼟版 B.C.700頃 1782 1889
1650頃 近代的な「データ」の概念の確⽴ ジョン・グラント(英) ウィリアム・ペティ(英) 1829 最初の影付き⽐較地図 「教育状況と犯罪数の⽐較統計」 アンドレ=ミシェル・ゲリー(仏) アントニオ・バルビ(仏) 「回帰」概念の確⽴ フランシス・ゴルトン(英) 1886 「散布図」概念の誕⽣ ウィリアム・ハーシェル(英) 1833
最初の主題図「新ヨーロッパ地図」 アウグスト・クローム (独) ⽇本最初の主題地図帳 「⼤⽇本帝国地産要覧図」 最古の世界図 バビロニアの粘⼟版 B.C.700頃 1782 1889
1650頃 近代的な「データ」の概念の確⽴ ジョン・グラント(英) ウィリアム・ペティ(英) 1829 最初の影付き⽐較地図 「教育状況と犯罪数の⽐較統計」 アンドレ=ミシェル・ゲリー(仏) アントニオ・バルビ(仏) 「回帰」概念の確⽴ フランシス・ゴルトン(英) 1886 「散布図」概念の誕⽣ ウィリアム・ハーシェル(英) 1833 1482 「形状の緯度について」 ニコラス・オレーム(仏)
「形状の緯度について」ニコラス・オレーム(仏) 1482 “緯度” “経度” 物理量の関数関係の可視化法 Wikipedia-en
𝑋 𝑌 𝑦! 𝑥! 𝑦" 𝑥" 𝑋 𝑌 𝑥! 𝑥"
𝑦! 𝑦" σʔλՄࢹԽ ࣸ૾ mapping
࣮ଘ ࣸ૾ʢ؍ʣ σʔλ ࣸ૾ʢσʔλՄࢹԽʣ άϥϑ 𝑋 𝑌 𝑦! 𝑥! 𝑦"
𝑥" 𝑋 𝑌 𝑥! 𝑥" 𝑦! 𝑦" EBUB mapping σʔλՄࢹԽ
写像 (mapping) 𝑓: 𝑋 → 𝑌 𝑋 𝑌 ある情報の集合の要素を、別の情報の集合の ただ1つの要素に対応づけるプロセス
「ナポレオンの⾏進」シャルル・ジョセフ・ミナール, 1812 -- これは、かつて作成された統計グラフィックのなかで最良のものと⾔えるだろう by エドワード・タフテ, 1983 ・地理情報(経度, 緯度)・軍の規模 ・軍の移動⽅向
・気温
□ Rの基本 □ Geostatisticsの基本 ✔ ✔
Enjoy!!