| 数学 | 統計 | ベイズ統計 |
環境
インストール
環境
HELP
> help(log)
> ?log
> args(log)
function (x, base = exp(1))
データセット
data()
> help(Indometh)
パッケージ
- Rでは、関数及びデータを文野別に分類してパッケージにまとめている
- 拡張パッケージのインストールも可能
- どのようなパッケージが存在するのか調べる
> library()
> library(base)
> library(help=base)
基本
代入
> x <- log(100)
> x
[1] 4.60517
代入と表示を同時に行う
> (x <- 1:5)
[1] 1 2 3 4 5
ベクトル
- 複数の値をまとめる概念
- c() で、複数の値を一つにまとめることができる
> x <- c(1,2,3,4,5)
> x
[1] 1 2 3 4 5
> sqrt(x)
[1] 1.000000 1.414214 1.732051 2.000000 2.236068
ベクトルの要素
> x[2]
[1] 2
> x[2] <- 8
> x
[1] 1 8 3 4 5
ベクトルの結合
> x <- c(x, c(6,7,8))
> x
[1] 1 8 3 4 5 6 7 8
ベクトル演算
> c(1,2,3) + c(3,2,1)
[1] 4 4 4
> c(1,2,3) * 2
[1] 2 4 6
インクリメント・デクリメントするベクトルの生成
- 1から5 まで1ずつ増える
- 3から-3まで1ずつ減る
> 1:5
[1] 1 2 3 4 5
> 3:-3
[1] 3 2 1 0 -1 -2 -3
数学関数
意味
|
関数
|
三角関数
|
sin(x), cos(x), tan(x)
|
逆三角関数
|
asin(x), acos(x), atan(x)
|
双曲線関数
|
sinh(x), cosh(x), tanh(x)
|
逆双曲線関数
|
asinh(x), acosh(x), atanh(x)
|
対数
|
log(x), log10(x), log2(x), log1p(x)
|
指数関数
|
exp(x), expm1(x)
|
平方根
|
sqrt(x)
|
四捨五入
|
round(x)
|
小数切り下げ
|
floor(x)
|
小数切り上げ
|
celling(x)
|
整数部分
|
trunc(x)
|
xの符号
|
sign(x)
|
関数定義
関数名 <- function(引数) {
: 計算処理
return (戻値)
}
エディタの起動
制御
条件分岐(if/else)
if (条件式) {
: true の場合
} else {
: false の場合
}
繰り返し(for)
for (変数 in リスト) {
: 繰り返し処理
}
数値計算
ニュートン法(uniroot)
多項式の解(polyroot)
> polyroot(c(-5,1,1))
[1] 1.791288-0i -2.791288+0i
グラフ作成
高水準作図関数
*一枚の完成されたグラフを書く
グラフ
|
関数
|
散布図
|
plot(ベクトル),plog(ベクトル1 , ベクトル2)
|
ヒストグラム
|
hist(ベクトル)
|
箱ひげ図
|
boxplot(ベクトル)
|
棒グラフ
|
barplot(各カテゴリの頻度が入ったベクトル)
|
円グラフ
|
pie(各カテゴリの頻度が入ったベクトル)
|
分割表の図
|
mosaicplot(行列データ)
|
スターチャート
|
stars(行列データ)
|
対散布図
|
pairs(行列データ)
|
1次元関数のグラフ
|
curve(関数, 左端, 右端)
|
2次元関数のグラフ
|
persp(x軸, y軸, z軸)
|
低水準作図関数
図形
|
関数
|
点
|
points()
|
直線
|
lines(), segments(), abline()
|
格子
|
grid()
|
矢印
|
arrows()
|
矩形
|
rect()
|
文字
|
text(), mtext(), title()
|
枠と軸
|
box(), axis()
|
凡例
|
legend()
|
多角形
|
plygon()
|
グラフの保存
> setwd('~/Workspaces/R')
> getwd()
[1] "/Users/hirotoyagi/Workspaces/R"
help("Devices")
- 作図デバイスを開く(ファイル名の指定)
- プロット
- 作図デバイスを閉じる(ファイルが保存される)
> pdf(file='graph.pdf')
> plot(1:100)
> dev.off()
データ解析
データ解析の流れ
- データを読み込ませる
- 読み込ませたデータをプロット
- 読み込ませたデータの統計量を求める
ボストンデータセット
> library(MASS)
> head(Boston)
crim zn indus chas nox rm age dis rad tax ptratio black lstat medv
1 0.00632 18 2.31 0 0.538 6.575 65.2 4.0900 1 296 15.3 396.90 4.98 24.0
2 0.02731 0 7.07 0 0.469 6.421 78.9 4.9671 2 242 17.8 396.90 9.14 21.6
3 0.02729 0 7.07 0 0.469 7.185 61.1 4.9671 2 242 17.8 392.83 4.03 34.7
4 0.03237 0 2.18 0 0.458 6.998 45.8 6.0622 3 222 18.7 394.63 2.94 33.4
5 0.06905 0 2.18 0 0.458 7.147 54.2 6.0622 3 222 18.7 396.90 5.33 36.2
6 0.02985 0 2.18 0 0.458 6.430 58.7 6.0622 3 222 18.7 394.12 5.21 28.7
ヒストグラムを書く
> hist(Boston$rm)
基本統計量
意味
|
関数
|
総和
|
sum(x)
|
平均
|
mean(x)
|
中央値
|
median(x)
|
不偏分散
|
var(x)
|
標準偏差
|
sd(x)
|
最大値
|
max(x)
|
最小値
|
min(x)
|
重み付平均
|
weighted.mean(x)
|
不偏共分散
|
var(x, y)
|
相関係数
|
cor(x、y)
|
四分位偏差
|
IQR(x)
|
5数要約
|
fivenum(x)
|
クォンタイル点
|
quantile(x)
|
範囲
|
range(x)
|
平均
|
ave(x)
|
関数とプログラミング
インデックス
記号
|
意味
|
x[i]
|
i番目の要素にアクセス
|
xi
|
i番目のリスト要素にアクセス
|
x$a
|
xの中のaを取り出す
|
x[i,j]
|
i行j列目の要素にアクセス
|
x$"a"
|
xの中のaを取り出す
|
条件分岐
if ,else
if (条件式) {
} else {
}
switch
switch(<条件式>
文字列 = <条件式=文字列1の場合の式>,
:
)
繰り返し
for
for ( ループ変数 in リスト ) {
}
while
while (条件式) {
}
break,next
データハンドリング
- Rで本格的なデータを扱う際には、データフレームという形式にする。
- データフレーム上で様々な処理を行う。
データフレーム
R Studio
- Alt + Shift + k : キーボードショートカット一覧
reader
library(readr)
dataset <- read_csv("O1.csv")
View(dataset)
dplyr
install
install.packages("dplyr")
Error in o1 %>% head : could not find function "%>%"
> install.packages("magrittr")
> library(magrittr)
Warning message:
パッケージ ‘magrittr’ はバージョン 3.4.4 の R の下で造られました