SlideShare a Scribd company logo
1 of 9
Download to read offline
R note 01 on Mac OS X
Satoshi Kume
140809 ver 1.2
「R」 とは?
※ データマイニング: 大量のデータを解析し、そのデータの中から情報(相関関係やパターンなど)を抽出する技法や方法論のこと。
 1996年頃にニュージーランドのオークランド大学のR. IhakaとR. C. Gentleman
により作られたプログラミング言語及びその開発実行環境である。
  データマイニング(※)、統計計算、およびグラフィックスのための言語・環境であ
る。 多様な統計手法(線形・非線形モデル・古典的統計検定・時系列解析・判別分析な
ど)とグラフィックスを提供し、広汎な拡張が可能である。
「R」を使うメリット
・ 文法が簡単。対話形式のプログラミングが可能である。
・ 日本語、英語ともに参考資料が多い。
・ 新たな統計手法は、はじめにR言語上で実装されるケースが多い。
・ Rシステムを使い、CRANで公開される数多くのパッケージが可能である。
http://www.r-project.org/
index.html
1.「R」のダウンロード・インストール
2.「R」の起動 右のような「Rコンソール」が表示される
3. Rの基本法則
・ 計算式内に、空白があっても無視される。
・ セミコロン(;)で複数行を連結が可能。
・ ESCで、式の途中入力をキャンセルする。
> getwd() # 作業ディレクトリの確認
> dir() # 作業ディレクトリのファイル表示
> setwd(“/Users/home/Desktop/test”) # 作業ディレクトリの変更
(追記) Menu " その他 " 作業ディレクトリの変更... でも可能。
> ?dir() # 「?」は、ヘルプの表示
4. 基本的な R コマンド(1)
5. 基本的な R コマンド(2)
> x <- 2 # 変数xに代入する
> x # 変数x内の表示
[1] 2
> (x <- 3.22) # 代入・表示を同時に行う
[1] 3.22
> print(x) # オブジェクトの表示
[1] 3.22
> str(x) # オブジェクトの情報付き表示
num 3.22 # num: 実数
6. 基本的な演算関数
> + # 足し算
> - # 引き算
> * # 掛算
> / # 割り算
> ^ # 累乗
> sqrt(x) # 平方根
> abs(x) # 絶対値
> round(x, digits = 1) # 小数点第一位で四捨五入
> trunc(x) # 整数の出力
> exp(x) # 指数関数
> log(x) # 自然対数
> log10(x) # 常用対数
> sin(x) # sin関数
> cos(x) # cos関数
7. 基本的なベクトル関数
> z <- c(1, 2, 3, 4, 5) #「ベクトル」として変数zに代入する
# c() : 数字を成分とするベクトルをつくる。「c」は、concatenateの頭文字。
> z
[1] 1 2 3 4 5
> length(z) # 成分数の表示
> sum(z) # 総和の算出
> mean(z) # 平均値の算出
> median(z) # 中央値の算出
> var(z) # 不偏分散の算出
> sd(z) # 標準偏差の算出
> max(z) # 最大値の算出
> min(z) # 最小値の算出
8. ベクトルの要約・統計
> summary(z) # データの要約統計量
Min. 1st Qu. Median Mean 3rd Qu. Max.
1 2 3 3 4 5
> table(z) # 度数集計した表の表示
z
1 2 3 4 5
1 1 1 1 1
> z[3] # ベクトル内の3番目を選択・表示する
[1] 3
> z[-3] # ベクトル内の3番目以外を選択・表示する
[1] 1 2 4 5
> (z[3] <- NA) # zの3番目にNA(欠損値)を代入する
[1] 1 2 NA 4 5
> (z1 <- na.omit(z)) # na.omit(): NA or NAを含む行を削除する関数
[1] 1 2 4 5
attr(,"na.action")
[1] 3
attr(,"class")
[1] "omit"
9. ベクトル操作 (1)
> z <= 3 # 「3」以下の場合、TRUEを返す
[1] TRUE TRUE TRUE FALSE FALSE
> z >= 3 # 「3」以上の場合、TRUEを返す
[1] FALSE FALSE TRUE TRUE TRUE
> z == 3 # 「3」と一致する場合、TRUEを返す
[1] FALSE FALSE TRUE FALSE FALSE
> seq(0, 5, length = 9) # 0から5の間を50等分したベクトル作成
> seq(0, 5, by = 1) # 0から5まで 1 ずつ増加するベクトル作成
> rep(0:5) # 0から5まで 1 ずつ増加する数列生成.
> (x <- rep(0:5, times = 3)) # 0から5まで 1 づつ増加する数列3個作成
> (x1 <- unique(x)) # 反復値を除いたベクトルを返す
> (y <- replace(x, c(2,4,6), NA)) # x の2,4,6番目の要素を NA に置き換える
> a <- c(1, 2); b <- c(3, 4); c <- c(5, 6)
> c(a, b, c) # a, b, c のベクトル結合
> (d <- append(a, c)) # a, c のベクトル結合
10. ベクトル操作 (2)
12. データの変換
data.vector <- as.vector(data) # ベクトルに変換
data.character <- as.character(data) # 文字列に変換
data.matrix <- as.matrix(data) # 行列に変換
data.array <- as.array(data) # 配列に変換
data.list <- as.list(data) # リストに変換
data.frame <-as.data.frame(data) # データフレームに変換
11. データ型とデータ構造
大きく6種類のデータ型がある。
実数( numeric)、整数( integer)、複素数(complex)、文字列
(character)、論理値(logical)、関数(function)
※ データ型が知りたい場合、mode() or str()関数を使用する。
データ構造には、以下のようなものがある。
ベクトル(vector)、行列(matrix)、配列(array)、リスト(list)、データ
フレーム(data.frame)、順序なし因子(factor)、順序つき因子(ordered)
as.xxx() 関数を使用する。
13. データの読み込み・保存
# データの保存
> write.table(data, file="ファイル名", append=FALSE, col.names=TRUE)
(追記1)append=TRUE: ファイルの行方向に追記する
(追記2)col.names=FALSE: 列名を出力しない
# CSVファイル(カンマ区切り)の読み込み(データフレームとして読み込まれる)
> data <- read.table(“test.csv”, header= TRUE, sep=”,”)
(追記1)header= TRUE: 列名がある場合、sep=: データ間の区切り指定
(追記2)skip=1: 1行目を読み飛ばす
(追記3)check.names = FALSE: 文字列をそのまま読み込む
(追記4)fill = TRUE: 空欄に「NA」を代入する(default)
     ※ NA: Rのデフォルト欠損値コーディング
>str(data) # オブジェクトの情報付き表示
(ベクトルとして読み込み)
> data <- scan("data.txt") # ベクトルとして読み込み
14. Rエディタの使い方(基本的にプログラムはエディタに書く!)
1. Menu ファイル 新しいスクリプト プログラムを書く
2. スクリプトの選択
3. Menu 編集 カーソル行または選択中のRコードを実行
(スクリプトの保存)
4. Menu ファイル 別名で保存
(追記 拡張子は、”.R”とする)

More Related Content

What's hot

第3回Rを使って統計分析を勉強する会
第3回Rを使って統計分析を勉強する会第3回Rを使って統計分析を勉強する会
第3回Rを使って統計分析を勉強する会Nobuto Inoguchi
 
アルゴリズムとデータ構造9
アルゴリズムとデータ構造9アルゴリズムとデータ構造9
アルゴリズムとデータ構造9Kenta Hattori
 
みどりぼん3章前半
みどりぼん3章前半みどりぼん3章前半
みどりぼん3章前半Akifumi Eguchi
 
アルゴリズムとデータ構造10
アルゴリズムとデータ構造10アルゴリズムとデータ構造10
アルゴリズムとデータ構造10Kenta Hattori
 
平面への射影と行列
平面への射影と行列平面への射影と行列
平面への射影と行列政孝 鍋島
 
Bootstrap methodの勉強メモ
Bootstrap methodの勉強メモBootstrap methodの勉強メモ
Bootstrap methodの勉強メモNorimitsu Nishida
 

What's hot (6)

第3回Rを使って統計分析を勉強する会
第3回Rを使って統計分析を勉強する会第3回Rを使って統計分析を勉強する会
第3回Rを使って統計分析を勉強する会
 
アルゴリズムとデータ構造9
アルゴリズムとデータ構造9アルゴリズムとデータ構造9
アルゴリズムとデータ構造9
 
みどりぼん3章前半
みどりぼん3章前半みどりぼん3章前半
みどりぼん3章前半
 
アルゴリズムとデータ構造10
アルゴリズムとデータ構造10アルゴリズムとデータ構造10
アルゴリズムとデータ構造10
 
平面への射影と行列
平面への射影と行列平面への射影と行列
平面への射影と行列
 
Bootstrap methodの勉強メモ
Bootstrap methodの勉強メモBootstrap methodの勉強メモ
Bootstrap methodの勉強メモ
 

Similar to R note 01_ver1.2

LET2011: Rによる教育データ分析入門
LET2011: Rによる教育データ分析入門LET2011: Rによる教育データ分析入門
LET2011: Rによる教育データ分析入門Yuichiro Kobayashi
 
第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章Tomonobu_Hirano
 
初心者講習会資料(Osaka.R#5)
初心者講習会資料(Osaka.R#5)初心者講習会資料(Osaka.R#5)
初心者講習会資料(Osaka.R#5)Masahiro Hayashi
 
第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案yushin_hirano
 
第一回ゆるふわーる
第一回ゆるふわーる第一回ゆるふわーる
第一回ゆるふわーるSachiko Hirata
 
Rで学ぶデータマイニングI 第8章〜第13章
Rで学ぶデータマイニングI 第8章〜第13章Rで学ぶデータマイニングI 第8章〜第13章
Rで学ぶデータマイニングI 第8章〜第13章Prunus 1350
 
関数型都市忘年会『はじめての函数型プログラミング』
関数型都市忘年会『はじめての函数型プログラミング』関数型都市忘年会『はじめての函数型プログラミング』
関数型都市忘年会『はじめての函数型プログラミング』Kenta USAMI
 
初心者講習会資料(Osaka.R#7)
初心者講習会資料(Osaka.R#7)初心者講習会資料(Osaka.R#7)
初心者講習会資料(Osaka.R#7)Masahiro Hayashi
 
Rあんなときこんなとき(tokyo r#12)
Rあんなときこんなとき(tokyo r#12)Rあんなときこんなとき(tokyo r#12)
Rあんなときこんなとき(tokyo r#12)Shintaro Fukushima
 
ビジネス活用事例で学ぶデータサイエンス入門 #2
ビジネス活用事例で学ぶデータサイエンス入門 #2ビジネス活用事例で学ぶデータサイエンス入門 #2
ビジネス活用事例で学ぶデータサイエンス入門 #2you shimajiro
 
Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017wada, kazumi
 
形式手法とalloyの紹介
形式手法とalloyの紹介形式手法とalloyの紹介
形式手法とalloyの紹介Daisuke Tanaka
 
はじめてのベイズ推定
はじめてのベイズ推定はじめてのベイズ推定
はじめてのベイズ推定Kenta Matsui
 
K010 appstat201201
K010 appstat201201K010 appstat201201
K010 appstat201201t2tarumi
 
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」Nagi Teramo
 
初心者講習会資料(Osaka.r#6)
初心者講習会資料(Osaka.r#6)初心者講習会資料(Osaka.r#6)
初心者講習会資料(Osaka.r#6)Masahiro Hayashi
 

Similar to R note 01_ver1.2 (20)

StatGenSummerSchool2023_Rsoftware.pdf
StatGenSummerSchool2023_Rsoftware.pdfStatGenSummerSchool2023_Rsoftware.pdf
StatGenSummerSchool2023_Rsoftware.pdf
 
LET2011: Rによる教育データ分析入門
LET2011: Rによる教育データ分析入門LET2011: Rによる教育データ分析入門
LET2011: Rによる教育データ分析入門
 
第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章
 
初心者講習会資料(Osaka.R#5)
初心者講習会資料(Osaka.R#5)初心者講習会資料(Osaka.R#5)
初心者講習会資料(Osaka.R#5)
 
第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案
 
第一回ゆるふわーる
第一回ゆるふわーる第一回ゆるふわーる
第一回ゆるふわーる
 
Tokyo r27
Tokyo r27Tokyo r27
Tokyo r27
 
Rで学ぶデータマイニングI 第8章〜第13章
Rで学ぶデータマイニングI 第8章〜第13章Rで学ぶデータマイニングI 第8章〜第13章
Rで学ぶデータマイニングI 第8章〜第13章
 
関数型都市忘年会『はじめての函数型プログラミング』
関数型都市忘年会『はじめての函数型プログラミング』関数型都市忘年会『はじめての函数型プログラミング』
関数型都市忘年会『はじめての函数型プログラミング』
 
はじめての「R」
はじめての「R」はじめての「R」
はじめての「R」
 
初心者講習会資料(Osaka.R#7)
初心者講習会資料(Osaka.R#7)初心者講習会資料(Osaka.R#7)
初心者講習会資料(Osaka.R#7)
 
Rあんなときこんなとき(tokyo r#12)
Rあんなときこんなとき(tokyo r#12)Rあんなときこんなとき(tokyo r#12)
Rあんなときこんなとき(tokyo r#12)
 
ビジネス活用事例で学ぶデータサイエンス入門 #2
ビジネス活用事例で学ぶデータサイエンス入門 #2ビジネス活用事例で学ぶデータサイエンス入門 #2
ビジネス活用事例で学ぶデータサイエンス入門 #2
 
Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017
 
形式手法とalloyの紹介
形式手法とalloyの紹介形式手法とalloyの紹介
形式手法とalloyの紹介
 
R language definition3.1_3.2
R language definition3.1_3.2R language definition3.1_3.2
R language definition3.1_3.2
 
はじめてのベイズ推定
はじめてのベイズ推定はじめてのベイズ推定
はじめてのベイズ推定
 
K010 appstat201201
K010 appstat201201K010 appstat201201
K010 appstat201201
 
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
 
初心者講習会資料(Osaka.r#6)
初心者講習会資料(Osaka.r#6)初心者講習会資料(Osaka.r#6)
初心者講習会資料(Osaka.r#6)
 

More from Satoshi Kume

ChatGPT の現状理解と 2023年7月版 LLM情報アップデート
ChatGPT の現状理解と 2023年7月版 LLM情報アップデートChatGPT の現状理解と 2023年7月版 LLM情報アップデート
ChatGPT の現状理解と 2023年7月版 LLM情報アップデートSatoshi Kume
 
230517_chatGPT_v01.pdf
230517_chatGPT_v01.pdf230517_chatGPT_v01.pdf
230517_chatGPT_v01.pdfSatoshi Kume
 
20230314_R-universe.pdf
20230314_R-universe.pdf20230314_R-universe.pdf
20230314_R-universe.pdfSatoshi Kume
 
211204_japan_r_v01
211204_japan_r_v01211204_japan_r_v01
211204_japan_r_v01Satoshi Kume
 
211104 Bioc Asia workshop
211104 Bioc Asia workshop211104 Bioc Asia workshop
211104 Bioc Asia workshopSatoshi Kume
 
CRANパッケージの作成・投稿とコードレビュー対応 〜 GoogleImage2Array パッケージでの事例紹介 〜 @ BioPackathon
CRANパッケージの作成・投稿とコードレビュー対応 〜 GoogleImage2Array パッケージでの事例紹介 〜 @ BioPackathonCRANパッケージの作成・投稿とコードレビュー対応 〜 GoogleImage2Array パッケージでの事例紹介 〜 @ BioPackathon
CRANパッケージの作成・投稿とコードレビュー対応 〜 GoogleImage2Array パッケージでの事例紹介 〜 @ BioPackathonSatoshi Kume
 
Exchange program 071128
Exchange program 071128Exchange program 071128
Exchange program 071128Satoshi Kume
 
D3 slides (Satoshi Kume)
D3 slides (Satoshi Kume)D3 slides (Satoshi Kume)
D3 slides (Satoshi Kume)Satoshi Kume
 
AI学会 合同研究会2020 発表スライド (201120)
AI学会 合同研究会2020 発表スライド (201120)AI学会 合同研究会2020 発表スライド (201120)
AI学会 合同研究会2020 発表スライド (201120)Satoshi Kume
 
210609 Biopackthon: BioImageDbs for ExperimentalHub (修正版)
210609 Biopackthon: BioImageDbs for ExperimentalHub (修正版)210609 Biopackthon: BioImageDbs for ExperimentalHub (修正版)
210609 Biopackthon: BioImageDbs for ExperimentalHub (修正版)Satoshi Kume
 
Openlink Virtuoso v01
Openlink Virtuoso v01Openlink Virtuoso v01
Openlink Virtuoso v01Satoshi Kume
 
201209 Biopackathon 12th
201209 Biopackathon 12th201209 Biopackathon 12th
201209 Biopackathon 12thSatoshi Kume
 
201126 Wikidata クラス階層 SPARQL検索
201126 Wikidata クラス階層 SPARQL検索201126 Wikidata クラス階層 SPARQL検索
201126 Wikidata クラス階層 SPARQL検索Satoshi Kume
 
201111_biopackathon_11th_v00pre
201111_biopackathon_11th_v00pre201111_biopackathon_11th_v00pre
201111_biopackathon_11th_v00preSatoshi Kume
 
200612_BioPackathon_ss
200612_BioPackathon_ss200612_BioPackathon_ss
200612_BioPackathon_ssSatoshi Kume
 
How_to_install_OpenCV_ver1.0
How_to_install_OpenCV_ver1.0How_to_install_OpenCV_ver1.0
How_to_install_OpenCV_ver1.0Satoshi Kume
 
CentOS_slide_ver1.0
CentOS_slide_ver1.0CentOS_slide_ver1.0
CentOS_slide_ver1.0Satoshi Kume
 
Mac_Terminal_ver1.0
Mac_Terminal_ver1.0Mac_Terminal_ver1.0
Mac_Terminal_ver1.0Satoshi Kume
 

More from Satoshi Kume (20)

ChatGPT の現状理解と 2023年7月版 LLM情報アップデート
ChatGPT の現状理解と 2023年7月版 LLM情報アップデートChatGPT の現状理解と 2023年7月版 LLM情報アップデート
ChatGPT の現状理解と 2023年7月版 LLM情報アップデート
 
230517_chatGPT_v01.pdf
230517_chatGPT_v01.pdf230517_chatGPT_v01.pdf
230517_chatGPT_v01.pdf
 
20230314_R-universe.pdf
20230314_R-universe.pdf20230314_R-universe.pdf
20230314_R-universe.pdf
 
211204_japan_r_v01
211204_japan_r_v01211204_japan_r_v01
211204_japan_r_v01
 
211104 Bioc Asia workshop
211104 Bioc Asia workshop211104 Bioc Asia workshop
211104 Bioc Asia workshop
 
CRANパッケージの作成・投稿とコードレビュー対応 〜 GoogleImage2Array パッケージでの事例紹介 〜 @ BioPackathon
CRANパッケージの作成・投稿とコードレビュー対応 〜 GoogleImage2Array パッケージでの事例紹介 〜 @ BioPackathonCRANパッケージの作成・投稿とコードレビュー対応 〜 GoogleImage2Array パッケージでの事例紹介 〜 @ BioPackathon
CRANパッケージの作成・投稿とコードレビュー対応 〜 GoogleImage2Array パッケージでの事例紹介 〜 @ BioPackathon
 
Exchange program 071128
Exchange program 071128Exchange program 071128
Exchange program 071128
 
D3 slides (Satoshi Kume)
D3 slides (Satoshi Kume)D3 slides (Satoshi Kume)
D3 slides (Satoshi Kume)
 
AI学会 合同研究会2020 発表スライド (201120)
AI学会 合同研究会2020 発表スライド (201120)AI学会 合同研究会2020 発表スライド (201120)
AI学会 合同研究会2020 発表スライド (201120)
 
210609 Biopackthon: BioImageDbs for ExperimentalHub (修正版)
210609 Biopackthon: BioImageDbs for ExperimentalHub (修正版)210609 Biopackthon: BioImageDbs for ExperimentalHub (修正版)
210609 Biopackthon: BioImageDbs for ExperimentalHub (修正版)
 
Openlink Virtuoso v01
Openlink Virtuoso v01Openlink Virtuoso v01
Openlink Virtuoso v01
 
201209 Biopackathon 12th
201209 Biopackathon 12th201209 Biopackathon 12th
201209 Biopackathon 12th
 
201126 Wikidata クラス階層 SPARQL検索
201126 Wikidata クラス階層 SPARQL検索201126 Wikidata クラス階層 SPARQL検索
201126 Wikidata クラス階層 SPARQL検索
 
201111_biopackathon_11th_v00pre
201111_biopackathon_11th_v00pre201111_biopackathon_11th_v00pre
201111_biopackathon_11th_v00pre
 
200612_BioPackathon_ss
200612_BioPackathon_ss200612_BioPackathon_ss
200612_BioPackathon_ss
 
How_to_install_OpenCV_ver1.0
How_to_install_OpenCV_ver1.0How_to_install_OpenCV_ver1.0
How_to_install_OpenCV_ver1.0
 
CentOS_slide_ver1.0
CentOS_slide_ver1.0CentOS_slide_ver1.0
CentOS_slide_ver1.0
 
R_note_ODE_ver1.0
R_note_ODE_ver1.0R_note_ODE_ver1.0
R_note_ODE_ver1.0
 
Mac_Terminal_ver1.0
Mac_Terminal_ver1.0Mac_Terminal_ver1.0
Mac_Terminal_ver1.0
 
R_note_02_ver1.0
R_note_02_ver1.0R_note_02_ver1.0
R_note_02_ver1.0
 

R note 01_ver1.2

  • 1. R note 01 on Mac OS X Satoshi Kume 140809 ver 1.2 「R」 とは? ※ データマイニング: 大量のデータを解析し、そのデータの中から情報(相関関係やパターンなど)を抽出する技法や方法論のこと。  1996年頃にニュージーランドのオークランド大学のR. IhakaとR. C. Gentleman により作られたプログラミング言語及びその開発実行環境である。   データマイニング(※)、統計計算、およびグラフィックスのための言語・環境であ る。 多様な統計手法(線形・非線形モデル・古典的統計検定・時系列解析・判別分析な ど)とグラフィックスを提供し、広汎な拡張が可能である。 「R」を使うメリット ・ 文法が簡単。対話形式のプログラミングが可能である。 ・ 日本語、英語ともに参考資料が多い。 ・ 新たな統計手法は、はじめにR言語上で実装されるケースが多い。 ・ Rシステムを使い、CRANで公開される数多くのパッケージが可能である。
  • 2. http://www.r-project.org/ index.html 1.「R」のダウンロード・インストール 2.「R」の起動 右のような「Rコンソール」が表示される 3. Rの基本法則 ・ 計算式内に、空白があっても無視される。 ・ セミコロン(;)で複数行を連結が可能。 ・ ESCで、式の途中入力をキャンセルする。
  • 3. > getwd() # 作業ディレクトリの確認 > dir() # 作業ディレクトリのファイル表示 > setwd(“/Users/home/Desktop/test”) # 作業ディレクトリの変更 (追記) Menu " その他 " 作業ディレクトリの変更... でも可能。 > ?dir() # 「?」は、ヘルプの表示 4. 基本的な R コマンド(1) 5. 基本的な R コマンド(2) > x <- 2 # 変数xに代入する > x # 変数x内の表示 [1] 2 > (x <- 3.22) # 代入・表示を同時に行う [1] 3.22 > print(x) # オブジェクトの表示 [1] 3.22 > str(x) # オブジェクトの情報付き表示 num 3.22 # num: 実数
  • 4. 6. 基本的な演算関数 > + # 足し算 > - # 引き算 > * # 掛算 > / # 割り算 > ^ # 累乗 > sqrt(x) # 平方根 > abs(x) # 絶対値 > round(x, digits = 1) # 小数点第一位で四捨五入 > trunc(x) # 整数の出力 > exp(x) # 指数関数 > log(x) # 自然対数 > log10(x) # 常用対数 > sin(x) # sin関数 > cos(x) # cos関数 7. 基本的なベクトル関数 > z <- c(1, 2, 3, 4, 5) #「ベクトル」として変数zに代入する # c() : 数字を成分とするベクトルをつくる。「c」は、concatenateの頭文字。 > z [1] 1 2 3 4 5 > length(z) # 成分数の表示 > sum(z) # 総和の算出 > mean(z) # 平均値の算出 > median(z) # 中央値の算出 > var(z) # 不偏分散の算出 > sd(z) # 標準偏差の算出 > max(z) # 最大値の算出 > min(z) # 最小値の算出
  • 5. 8. ベクトルの要約・統計 > summary(z) # データの要約統計量 Min. 1st Qu. Median Mean 3rd Qu. Max. 1 2 3 3 4 5 > table(z) # 度数集計した表の表示 z 1 2 3 4 5 1 1 1 1 1 > z[3] # ベクトル内の3番目を選択・表示する [1] 3 > z[-3] # ベクトル内の3番目以外を選択・表示する [1] 1 2 4 5 > (z[3] <- NA) # zの3番目にNA(欠損値)を代入する [1] 1 2 NA 4 5 > (z1 <- na.omit(z)) # na.omit(): NA or NAを含む行を削除する関数 [1] 1 2 4 5 attr(,"na.action") [1] 3 attr(,"class") [1] "omit" 9. ベクトル操作 (1)
  • 6. > z <= 3 # 「3」以下の場合、TRUEを返す [1] TRUE TRUE TRUE FALSE FALSE > z >= 3 # 「3」以上の場合、TRUEを返す [1] FALSE FALSE TRUE TRUE TRUE > z == 3 # 「3」と一致する場合、TRUEを返す [1] FALSE FALSE TRUE FALSE FALSE > seq(0, 5, length = 9) # 0から5の間を50等分したベクトル作成 > seq(0, 5, by = 1) # 0から5まで 1 ずつ増加するベクトル作成 > rep(0:5) # 0から5まで 1 ずつ増加する数列生成. > (x <- rep(0:5, times = 3)) # 0から5まで 1 づつ増加する数列3個作成 > (x1 <- unique(x)) # 反復値を除いたベクトルを返す > (y <- replace(x, c(2,4,6), NA)) # x の2,4,6番目の要素を NA に置き換える > a <- c(1, 2); b <- c(3, 4); c <- c(5, 6) > c(a, b, c) # a, b, c のベクトル結合 > (d <- append(a, c)) # a, c のベクトル結合 10. ベクトル操作 (2)
  • 7. 12. データの変換 data.vector <- as.vector(data) # ベクトルに変換 data.character <- as.character(data) # 文字列に変換 data.matrix <- as.matrix(data) # 行列に変換 data.array <- as.array(data) # 配列に変換 data.list <- as.list(data) # リストに変換 data.frame <-as.data.frame(data) # データフレームに変換 11. データ型とデータ構造 大きく6種類のデータ型がある。 実数( numeric)、整数( integer)、複素数(complex)、文字列 (character)、論理値(logical)、関数(function) ※ データ型が知りたい場合、mode() or str()関数を使用する。 データ構造には、以下のようなものがある。 ベクトル(vector)、行列(matrix)、配列(array)、リスト(list)、データ フレーム(data.frame)、順序なし因子(factor)、順序つき因子(ordered) as.xxx() 関数を使用する。
  • 8. 13. データの読み込み・保存 # データの保存 > write.table(data, file="ファイル名", append=FALSE, col.names=TRUE) (追記1)append=TRUE: ファイルの行方向に追記する (追記2)col.names=FALSE: 列名を出力しない # CSVファイル(カンマ区切り)の読み込み(データフレームとして読み込まれる) > data <- read.table(“test.csv”, header= TRUE, sep=”,”) (追記1)header= TRUE: 列名がある場合、sep=: データ間の区切り指定 (追記2)skip=1: 1行目を読み飛ばす (追記3)check.names = FALSE: 文字列をそのまま読み込む (追記4)fill = TRUE: 空欄に「NA」を代入する(default)      ※ NA: Rのデフォルト欠損値コーディング >str(data) # オブジェクトの情報付き表示 (ベクトルとして読み込み) > data <- scan("data.txt") # ベクトルとして読み込み
  • 9. 14. Rエディタの使い方(基本的にプログラムはエディタに書く!) 1. Menu ファイル 新しいスクリプト プログラムを書く 2. スクリプトの選択 3. Menu 編集 カーソル行または選択中のRコードを実行 (スクリプトの保存) 4. Menu ファイル 別名で保存 (追記 拡張子は、”.R”とする)