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
130
Try-R-jp
Takahiro Sumiya
March 01, 2019
Tweet
Share
More Decks by Takahiro Sumiya
See All by Takahiro Sumiya
GAI-FD2025
gnutar
0
53
卒論・修論執筆における生成AI 活用とAI 不安:広島大学での実態調査 (2)/CE180
gnutar
0
39
大学教育現場と著作権/DME-2025-06-04
gnutar
0
53
著作権と授業に関する出前講習会/dme-2025-05-01
gnutar
0
210
Excelグラフはどうしてダサいのか/csd2024-3-sumiya
gnutar
0
81
出前講習会-西海市教育委員会/DME-2025-02-10
gnutar
0
54
オンデマンド授業と著作権/dme-2024-12-17
gnutar
0
60
著作権に関する アンケート (2024) 結果報告/sugowaka-enq-2024
gnutar
0
88
出前講習会-東近江市教育委員会/DME-2024-11-22
gnutar
0
55
Other Decks in Education
See All in Education
中間活動報告会 人材育成WG・技術サブWG / 20250808-oidfj-eduWG-techSWG
oidfj
0
310
技術文章を書くための執筆技術と実践法(パラグラフライティング)
hisashiishihara
19
6.7k
GitHubとAzureを使って開発者になろう
ymd65536
1
150
学習効果が高いフィードバックの仕方(ルース・バトラーの実験)
hysmrk
4
130
ビジネスモデル理解
takenawa
0
13k
Implicit and Cross-Device Interaction - Lecture 10 - Next Generation User Interfaces (4018166FNR)
signer
PRO
2
1.8k
2025年度春学期 統計学 第9回 確からしさを記述する ー 確率 (2025. 6. 5)
akiraasano
PRO
0
140
令和政経義塾第2期説明会
nxji
0
140
AIの時代こそ、考える知的学習術
yum3
2
190
2025年度春学期 統計学 第12回 分布の平均を推測する ー 区間推定 (2025. 6. 26)
akiraasano
PRO
0
150
Course Review - Lecture 12 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
1.8k
[FUN Open Campus 2025] 何でもセンシングしていいですか?
pman0214
0
220
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Fireside Chat
paigeccino
39
3.6k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
How STYLIGHT went responsive
nonsquared
100
5.7k
Adopting Sorbet at Scale
ufuk
77
9.5k
Statistics for Hackers
jakevdp
799
220k
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のメリット ‣ 統計計算に特化 ‣ グラフがキレイ ‣ コマンド(=テキスト情報)でやったこと が残るので、再現が簡単 ‣ 新しい手法がどんどん実装される
‣ 無料!オープンソース