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
Rの基礎 1
Search
xjorv
January 15, 2021
Education
0
180
Rの基礎 1
ICH E9で統計の内容に触れましたので、少し脇道に逸れて統計、の前にRについて説明します。Rを理解することで統計計算をRに肩代わりしてもらうことができます。
xjorv
January 15, 2021
Tweet
Share
More Decks by xjorv
See All by xjorv
コンパートメントモデル
xjorv
1
5.4k
コンパートメントモデルをStanで解く
xjorv
0
440
生物学的同等性試験 検出力の計算法
xjorv
0
3.4k
生物学的同等性試験ガイドライン 同等性パラメータの計算方法
xjorv
0
6k
粉体特性2
xjorv
0
2.4k
粉体特性1
xjorv
0
2.8k
皮膜5
xjorv
0
2.2k
皮膜4
xjorv
0
2.1k
皮膜3
xjorv
0
2.1k
Other Decks in Education
See All in Education
Design Guidelines and Principles - Lecture 7 - Information Visualisation (4019538FNR)
signer
PRO
0
2.4k
より良い学振申請書(DC)を作ろう 2025
luiyoshida
1
3.2k
OJTに夢を見すぎていませんか? ロールプレイ研修の試行錯誤/tryanderror-in-roleplaying-training
takipone
1
150
アウトプット0のエンジニアが半年でアウトプットしまくった話 With JAWS-UG
masakiokuda
2
300
ANS-C01_2回不合格から合格までの道程
amarelo_n24
1
240
2025年度春学期 統計学 第10回 分布の推測とは ー 標本調査,度数分布と確率分布 (2025. 6. 12)
akiraasano
PRO
0
120
モンテカルロ法(3) 発展的アルゴリズム / Simulation 04
kaityo256
PRO
5
1.3k
技術勉強会 〜 OAuth & OIDC 入門編 / 20250528 OAuth and OIDC
oidfj
5
1.2k
バックオフィス組織にも「チームトポロジー」の考えが使えるかもしれない!!
masakiokuda
0
100
SkimaTalk Tutorial for Corporate Customers
skimatalk
0
280
SkimaTalk Teacher Guidelines Summary
skimatalk
0
790k
プレゼンテーション実践
takenawa
0
4k
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
69
11k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
Being A Developer After 40
akosma
90
590k
Fireside Chat
paigeccino
37
3.5k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
490
The Cost Of JavaScript in 2023
addyosmani
51
8.4k
Transcript
Rの基礎 2020/8/5 Ver. 1.0
Rとは? • 統計解析向けのプログラミング言語 • CRAN(https://cran.r-project.org/)が開発・維持 • スクリプト言語のひとつ • ライブラリを用いることで、機能を追加できる
なぜR? 統計学専門のプログラミング言語 • 比較的簡単に習得できる(主に対話的に使用) • スポット的解析に向いている(遅くても問題ない) • 比較的古いため、学習材料が多く揃っている ✕ サーバー上で自動的に解析するような場合には向かない
✕ 汎用プログラミング言語よりできることは少ない ✕ プログラミング一本で働きたいなら学ぶべきではない *統計をやりながらプログラミングで働くならPythonを学ぶべき(学習コストはRよりは高め)
スクリプト言語とは? • コンパイラではなく、インタプリタを用いる • 書いたコードを即実行する • 遅い main(void){ print(“Hallo World”);
return 0; } 1010001001010101101 1011010010010011011 1000110101001010000 101110010100100 Hallo World ①コンパイル コード 機械語 実行 • コードを機械語に翻訳すること(①)をコンパイルといい、コンパイルするソフトをコンパイラと呼ぶ。 • コンパイラは機械語ファイルを作成・保存後に実行するが、インタプリタは機械語を直接CPUに渡す。
インストール方法 • 多くのプログラミング言語ではコンパイラ・インタプリタの インストールが必要 • 統合開発環境(IDE)を用いる場合が多い Rのインタプリタ Rの統合開発環境 CRANでダウンロード RStudio
インタプリタのインストール CRANのホームからDownload R for Windows→baseと選択し、 Download R x.x for Windowsをクリックする
最新のバージョンは4.02(20年8月5日)
インタプリタのインストール(2) ダウンロードされたR-x.x-win.exeでインストール *細かい設定を変更できますが、初めは特に気にする必要はありません
Rguiを起動する Rguiというソフトを起動することで、Rを使うことができる
Rstudioのインストール Rguiでもプログラミングできるが、使いにくい Rstudioを利用する Rstudio (https://www.rstudio.com/)
RStudioのインストール(2) Rstudio Desktop Open Source Editionをダウンロードする
RStudioのインストール(3) インストーラを用い、インストールする
RStudioの使い方 ①がテキストエディタ(プログラムを書く部分) ②がコンソール(プログラムの結果が表示される) ③がオブジェクト情報 ④がグラフ ① ② ③ ④ 主に①と②を操作する
コンソールに入力してみる コンソールに直接入力すると、すぐに実行される (対話的プログラミング)
テキストエディタに入力してみる テキストエディタに入力し、Ctrl+Enterを押すと、選択した行 が実行される
Rプログラミングの基礎: データ型 プログラミングで用いるモノ(Object)には型がある • 文字列(Character) • 数字(Numeric) • ロジカル(Logical) •
因子(Factor) • ベクター(Vector) • リスト(List) • 行列(Matrix) • データフレーム(DataFrame)
なぜ型が必要か? 型がないと、計算できないものを計算してしまう 10+“イヌ”+”定規”=?? *数値も文字列も2バイト情報なので実は足し算はできるが、足し算ができてしまうとわけがわからないことが起きてしまう
データ型: 文字列(Character) • 文字は、Characterという型を持つ • 文字はダブルクオーテーション* (“)で挟む *シングルクオーテーション(‘)も文字列を作るために使えるが、出力される記号(“、’、$など)の表記が違ってくる
データ型: 数字(Numeric) • 数字はNumericという型を持つ • ダブルクオーテーションはいらない • 四則演算ができる
データ型: ロジカル(Logical) • Logicalとは、真(True)と偽(False)を示す型のこと • TRUE(T)、FALSE(F)のみが該当する 小文字を混ぜると(True、False) ロジカルとしては認識されなくなる
データ型: 因子(Factor) • Rにしかないデータ型 • 数値にカテゴリ名を振ったもの • 統計解析に使う (まだわからなくても問題ないです)
データの集合: ベクター(Vector) • データの集まり(他言語の配列に当たる) • Rの数値、文字列は基本的にベクター • そのまま演算ができる ベクターは c()
という形で書く *cはcombineの略で、数値・文字列同士を結合させている
データの集合: リスト(list) • いろんな型のデータを集めて、1つにまとめたもの • 連想配列に使えるが、作ることはあまりない リストは list() という形で書く (まだわからなくても問題ないです)
連想配列: DirectoryやHashと呼ばれる。“Dog”→”イヌ”などのように、データとデータを結び付けておくもの
データの集合: 行列(Matrix) • 高校数学などで習う行列そのもの • 内積・連立方程式の計算などができる 行列は matrix(Vector, 行数, 列数)
という形で書く 上はクロネッカー積、下は外積
データの集合: データフレーム(dataframe) • Excelの表のようなもの • Rでデータを扱う時に多用する データフレームは data.frame(列名1=Vector1, 列名2=Vector2) という形で書く
(Vector1と2は同じ長さでないとダメ)
まとめ • Rは統計の言語であり、CRANからダウンロードできる • RStudioを使うことで簡単にプログラミングできる • データには型がある