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
Try-R-jp
Search
Takahiro Sumiya
March 01, 2019
Education
0
140
Try-R-jp
Takahiro Sumiya
March 01, 2019
Tweet
Share
More Decks by Takahiro Sumiya
See All by Takahiro Sumiya
生成AI活用セミナー/GAI-workshop
gnutar
0
180
GAI-FD2025
gnutar
0
98
卒論・修論執筆における生成AI 活用とAI 不安:広島大学での実態調査 (2)/CE180
gnutar
0
79
大学教育現場と著作権/DME-2025-06-04
gnutar
0
80
著作権と授業に関する出前講習会/dme-2025-05-01
gnutar
0
250
Excelグラフはどうしてダサいのか/csd2024-3-sumiya
gnutar
1
320
出前講習会-西海市教育委員会/DME-2025-02-10
gnutar
0
88
オンデマンド授業と著作権/dme-2024-12-17
gnutar
0
99
著作権に関する アンケート (2024) 結果報告/sugowaka-enq-2024
gnutar
0
130
Other Decks in Education
See All in Education
理工学系 第1回大学院説明会2026|東京科学大学(Science Tokyo)
sciencetokyo
PRO
0
380
From Participation to Outcomes
territorium
PRO
0
340
Sponsorship 2026 | VizChitra
vizchitra
1
120
Surviving the surfaceless web
jonoalderson
0
740
渡辺研Slackの使い方 / Slack Local Rule
kaityo256
PRO
11
11k
Avoin jakaminen ja Creative Commons -lisenssit
matleenalaakso
0
2.1k
Pen-based Interaction - Lecture 4 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
2.1k
演習:Gitの基本操作 / 04-git-basic
kaityo256
PRO
0
360
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
signer
PRO
0
2.6k
TinyGoをWebブラウザで動かすための方法+アルファ_20260201
masakiokuda
2
300
Gitの仕組みと用語 / 01-b-term
kaityo256
PRO
0
220
演習:Gitの応用操作 / 05-git-advanced
kaityo256
PRO
0
230
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
The World Runs on Bad Software
bkeepers
PRO
72
12k
How to train your dragon (web standard)
notwaldorf
97
6.6k
30 Presentation Tips
portentint
PRO
1
260
SEO for Brand Visibility & Recognition
aleyda
0
4.4k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Rails Girls Zürich Keynote
gr2m
96
14k
The Language of Interfaces
destraynor
162
26k
The untapped power of vector embeddings
frankvandijk
2
1.6k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
89
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Transcript
F3S講習会 統計データ処理ツールを使ってみよう (R入門) 広島大学情報メディア教育研究センター 隅谷孝洋
‣ R is a language and environment for statistic computing
and graphics [Rとは、統計計算と統計グラフのための 言語であり、(実行)環境である。] https://www.r-project.org/about.html
Γ͍ͨ͜ͱ ॲཧखॱ ʢΞϧΰϦζϜʣ 1: int main(int argc,char 2: int i=0;
3: char c; 4: while(i==0){ 5: c=getchar(); ϓϩάϥϜ ࣮ߦʂ (プログラミング)言語 (実行)環境
本日のメニュー 1. Rの準備 2. コマンドの投入と結果の表示 3. Excelのデータの読み込み 4. データの要約 5.
データの視覚的な確認 6. いくつかの統計分析手法を使ってみる
1. Rの準備
Rの準備 ‣ R ✓ R実行環境 ✓ これだけでも利用可 ‣ RStudio ✓
Rの(もっと便利な)実行環境 ✓ 普段はこちらを利用 ʴ
Rのインストール https://www.r-project.org/about.html (日本のミラーサイトを選択) $3"/ͷαΠτ Download R for (Mac)
OS X → R-3.5.1.pkg (最新版) Download R for Windows → Install R for the rst time → Download R 3.5.1 for Windows
RStudio のインストール https://www.rstudio.com (下の方までスクロールして...) RStudio 1.1.463 - Windows
Vista/7/8/10 RStudio 1.1.463 - Mac OS X 10.6+ (64-bit)
RStudioを起動してみる νΣοΫʂ
2. コマンドの投入と結果の表示
まずは、ここに 入れてみましょう
電卓として使う ‣ 式を打ち込んでみよう > 1+1 > 100/3 > 100/3*3 ‣
かっこも使える > (3+5)*7 > 3+5*7 # 結果が違う
Rのコマンドをファイルとして残しておこう ‣ 「プロジェクト」を作ると、一連のファイル をひとまとめにしやすい ✓ 命令(コマンド)を記したファイル ✓ データファイル ✓ 結果のグラフ
‣ File → New Project → New Directory → New Project
Rのコマンドをファイルとして残しておこう ‣ File→New File→R Script ίϚϯυΛ ॻ͍ͯɺ DUMFOUFS
݁Ռ ͪ͜Βʹग़Δ
高級な電卓として使う ‣ ベキ乗 ^ とか > 2^16 ‣ 関数とかも使える >
sin(pi/2) # > exp(1) # > factorial(10) # > choose(5,2) # sin ⇡ 2 10! 5C2 e1
グラフを描いてみよう > plot(c(5,5,4,3,3,4,1,1,1)) > x=c(5,4,3,3,1,4,1,1,1) # 変数に代入 > plot(x) #
スッキリ > plot(x,type="b") # これ、何のデータ? > plot(x,type="b",ylim=c(6,1)) > yr=2010:2018 > plot(yr,x,type="b",ylim=c(6,1))
Rでは、変数(オブジェクト)の中身の基本はベクトル > x # 変数名のみ入れると内容の表示 > x+10 # 数学のベクトルとは違う >
x+c(10,100) # 長さが違うものを足すと? > x[1] # 最初の数値を取り出す > x[c(1,3,5)] # 1,3,5番目を取り出す
一度終了して、再び開いてみよう ‣ コマンドファイルに名前をつけて保存 ‣ RStudio の終了 ‣ フォルダ内のファイルの確認 ‣ プロジェクトファイルをダブルクリックし
て再起動
3. Excelデータの読み込み
Excelのデータは、CSVにして読み込み ‣ Bb9から"carp.xlsx"をダウンロード ‣ Excelで開いて内容を確認 ‣ CSV (UTF-8) で保存 →
carp.csv ‣ Windowsの人は「CSV」で保存
CSVファイルを読み込むと「データフレーム」ができる > read.csv("carp.csv") # 画面に出ちゃう > c=read.csv("carp.csv") # 変数cに保存 >
c # 読めたか確認 ‣ 「データフレーム」は、名前がついたベクト ルの集まり > c$身長 # 「身長」という名前の列 > c$身長[3] # その三番目の値 > mean(c$身長) # 身長の平均
データフレーム(続き) > c$BMI=c$体重/(c$身長/100)^2 # BMI を計算 > c[c$BMI>30,] # BMI
が30より大きい選手 BMI = Weight(kg) Height(m) 2
おまけ1:こんなのもあります Excelのファイルを直接読み込む ‣ install.packages("readxl") ‣ library(readxl) ‣ carp=read_excel("carp.xlsx",1) ‣ dragons=read_excel("carp.xlsx",2)
4. データの要約
summary という関数が便利 ✓ summary(c) ‣ 数値データ ✓ Min(最小値),1st Qu.(第1四分位 点),
Median(中央値), Mean(平 均), 3rd Qu. (第3四分位点), Max(最大値) ‣ カテゴリーデータ ✓ 頻度
グループの要約 > # BMIが26より大きい選手のsummary > summary(c[c$BMI>26,]) > # ポジションごとの身長のsummary >
tapply(c$身長,c$ポジション,summary)
5. データの視覚的な確認
度数分布図、散布図、箱ヒゲ図 > hist(c$身長) ‣ Macの人...化けていますね orz > # ヒラギノ角ゴシックをW3使うように指定 >
par(family = "HiraKakuProN-W3") > hist(c$身長)
気を取り直して、度数分布図、散布図、箱ヒゲ図 > hist(c$身長) # 度数分布図 > barplot(table(c$ポジション)) > plot(c$身長,c$体重) #
散布図 > plot(c) # 散布図行列 > plot(c[,c(4,5,6,9)]) > boxplot(c$身長) # 箱ひげ図 > boxplot(c$身長[c$ポジション=="投手"], c$身長[c$ポジション!="投手"], names=c("投手","それ以外"),ylab="身長")
おまけ2:こんなのもあります 心理学研究用パッケージ > install.packages("psych") > library(psych) > pairs.panels(c[,c(4,5,6,9)])
ググって描いてみよう (1)
ググって描いてみよう (2)
6. いくつかの統計分析手法を使ってみる
線形回帰 > plot(c$体重 ~ c$身長) > result=lm(c$体重 ~ c$身長) >
abline(result) > summary(result)
左利きが多いのか? 世間一般の左利き率が0.1として、二項検定をおこなってみる > summary(c$投) > binom.test(13,13+56,0.1) > cp=c[c$ポジション=="投手",] > summary(cp$投)
> binom.test(11,11+23,0.1)
Rのメリット ‣ 統計計算に特化 ‣ グラフがキレイ ‣ コマンド(=テキスト情報)でやったこと が残るので、再現が簡単 ‣ 新しい手法がどんどん実装される
‣ 無料!オープンソース