RStudio公式サイトからの翻訳です.
?mean 特定の関数のヘルプを表示help.search(‘weighted mean’) 語句でヘルプ・ファイルを検索help(package = ‘dplyr’) 特定のパッケージのヘルプを表示###オブジェクトの情報を調べる
str(irs) オブジェクトのstructureを調べる.class(iris) オブジェクトのクラスを調べる.install.packages(‘dplyr’) CRANからパッケージのダウンロードとインストールを行うlibrary(dplyr) 毎セッション時に当該パッケージのすべての関数を使えるようにしておくdplyr::select library()宣言をせずにインストール済みのパッケージから関数を使うdata(iris) ビルトインされたデータセットをenvironmentに導入するgetwd() working directoryを調べるsetwd(‘c://file/path') wdをsetしなおすc(2, 4, 6) ベクトルに要素を追加する 2 4 6を得る2:6 整数のシークエンスを作る 2 3 4 5 6を得るseq(2, 3, by=0.5) より複雑なsequence 2.0 2.5 3.0を得るrep(1:2, times=3) ベクトルをrepeatする 1 2 1 2 1 2を得るrep(1:2, each=3) ベクトルの各要素をrepeatする 1 1 1 2 2 2を得るsort(x) xをsortするrev(x) xをreverseさせるtable(x) 値の総数をtable=一覧にするunique(x) 値の種類の数を数える たとえばunique(c(2, 2, 4, 6))は3x[4] 4番目の要素x[-4] 4番目を除く要素x[2:4] 2番目から4番目までの要素x[-(2:4)] 2番目から4番目までの要素を除く要素x[c(1,5)] 1番目と5番目の要素x[x==10] 10に等しい要素x[x<0] 0より小さい要素x[x %in% c(1,2,5)] 1,2,5のセットに含まれる要素x[‘apple’] ‘apple’の名前を持つ要素for (variable in sequence){
Do something
}
例
for (i in 1:4){
j <- i + 10
print (j)
}
while (condition){
Do something
}
例
while (i < 5){
print(i)
i <- i + 1
}
if (condition){
Do something
} else {
Do something different
}
例
if (i > 3){
print('Yes')
} else {
print('No')
}
function_name <- function(var){
Do something
return(new_variable)
}
例
square <- function(x){
squared <- x*x
return(squared)
}
※readrパッケージも参照.
| インプット | アウトプット | 何をしているか |
|---|---|---|
df<-read.table(‘file.txt') |
write.table(df, ‘file.txt') |
テキストファイルの読み込みと書き出し |
df<-read.csv(‘file.csv') |
write.csv(df, ‘file.csv') |
カンマ区切りcsvファイルの読み込みと書き出し(read.tableおよびwrite.tableの特殊パターン) |
load(‘file.RData') |
save(df, file = ‘file.Rdata') |
Rでしか扱えないRdata形式のファイルの読み込みと書き出し |
## データ型
データ型は下の表の上の型から下の型へは必ず変換できる.
| 型 | 中身 | 説明 |
|---|---|---|
as.logical |
TRUE, FALSE, TRUE | ブール値(T or F) |
as.numeric |
1,0,1 | 整数または小数 |
as.character |
‘1’,’0’,’1’ | 文字列.factorより好まれる |
as.factor |
‘1’,’0’,’1’ levels: ‘1’,’0’ | レベルを伴う文字列.なんらかの統計モデルのもとで使われる |
## 数学関係の関数
log(x) natural log自然対数を返すexp(x) exponential指数を返すmax(x) xのうち最大の要素の値を返すmin(x) xのうち最小の要素の値を返すround(x, n) xを小数nまでroundする=丸めるsignificant(x, n) xをn桁のsignificant figures有効数字まで丸めるcor(x, y) xとyの相関係数を返すsum(x) xの総和mean(x) xの平均median(x) xの中央値quantile(x) 四分位の値を返すrank(x) 変数xにおける各要素の昇順の順位を返すvar(x) xのvariance分散を返すsd(x) standard deviation標準偏差を返す以下のように行う.
> a <- 'apple'
> a
[1] 'apple'
RStudioの環境パネルも使える.
ls() ls()は環境にあるdfすべてをlistする,ls(iris)はirisの変数すべてをlistrm(x) xを環境からremoveするrm(list = ls()) すべてのdfを環境からremoveする,rm(list = ls(iris)) はirisの変数すべてをremoveベクトルxから行列をつくるのは関数matrixで.
m <- matrix(x, nrow = 3, ncol = 3)
このとき3×3の表が生成される.
2行目を選ぶなら m[2, ]
1列目を選ぶならm[ ,1]
2行3列目のセルを選ぶならm[2, 3]
t(m) 行列を転置transposeさせる
m %*% n 行列mと行列nの積を求める
solve(m, n) mを係数, nを答えとしたときの連立方程式の解を出力(参考)
list関数は異なる型の要素を結合してリストをつくる.例は以下のようなもの.
l <- list(x = 1:5, y = c('a', 'b'))
l[[2]] lの2番目の要素l[1] lの1番目の要素のみから新しいリストをつくる(この場合はx)l$x 要素xを表示l[‘y’] yという要素のみから新しいリストをつくる(この場合は2番目)※dplyrパッケージも参照.
data.frame関数はデータフレームをつくる.データフレームとは,リストのうち,すべての要素が同じ長さ(行数)をもつものをいう.例は以下のようなもの.
df <- data.frame(x = 1:3, y = c('a', 'b', 'c'))
データフレームで部分集合subsetをつくるときは,行列とリスト両方の指定のしかたができる.例えば,
df[ , 2] , df[[2]] , df$ydf[1, ] , df$xデータフレームの構造を知りたいときは,以下の関数が使える.
View(df) すべてのデータを表示head(df) 最初の6行を表示そのほか基本的な関数として以下のようなものがある.
nrow(df) number of rows 行数を表示ncol(df) number of columns 列数を表示dim(df) dfのdimension 次元を表示,すなわち行数と列数を同時に表示cbind(df, sth) 行数の同じdf, list, matrix同士の結合rbind(df, sth) 列数の同じdf, list, matrix同士の結合※stringrパッケージも参照.
paste(x, y, sep = '') 複数のベクトルを結合させるpaste(x, collapse = '') 複数のベクトルを結合させるgrep(pattern, x) xにおける正規表現を検索,表示gsub(pattern, replace, x) xをreplace引数の文字列で置き換えるtoupper(x) xを大文字にtolower(x) xを小文字にnchar(x) 文字列xのなかの文字数を表示lm(y ~ x, data=df) 線形回帰モデル linear modelglm(y ~ x, data=df) 一般化線形モデル generalized linear modelsummary(x) xの記述統計量を表示t.test(x, y) 母平均のt検定pairwise.t.test(x, y) ペアになった値での平均値のt検定prop.test(x, y) 母比率のt検定aov(x) 分散分析確率分布に関係する関数
| 乱数発生 random variates |
xの確率密度density function の値を返す |
任意の確率密度から確率probabilityを返す | 任意の下側確率から確率密度を返す | |
|---|---|---|---|---|
| 正規分布 normal |
rnorm(n, mean, sd) |
dnorm(x, mean, sd) |
pnorm(density, mean, sd) |
qnorm(p ,mean, sd) |
| ポワソン分布 poisson |
rpois |
dpois |
ppois |
qpois |
| 二項分布 binomial |
rbinom |
dbinom |
pbinom |
qbinom |
| 一様分布 uniform |
runif |
dunif |
punif |
qunif |
## 作図
※ggplot2パッケージも参照のこと
plot(x) xの値を順番に並べて図示plot(x, y) yに対するxの値を図示hist(x) xのhistgramを図示lubridateパッケージを参照