Data Analysis
●反応時間データを例に。english.txt
ヘッダー付きでファイル読み込み:
read.table("english.txt", header=T)
" "の中にURLを書けば、そのまま、インターネットからダウンロードできる。
ファイルの保存
english <- read.table("english.txt", header=T)
a == b 同じか?
a != b 違うか?
> pi
[1] 3.141593
デフォルトでは、少数6桁まで表示
data frame = data table
一つのvectorは同じ「型」でないといけない。
Each column is a vector.
> names(english) でヘッダーが一覧が出る。
english$Word で、Wordのカラム一覧が出る。
english[english$LengthInLetters > 5,1:5]
インデックス番号を書くべきところに条件を書いてしまうことができる。
文字数が5文字よりも多いものについて、1から5番のカラムを出力する。
english[(english$LengthInLetters > 5) & (english$Familiarity < 1.6),1:5]
複数の条件に合致するものを出す。&で。文字数5文字より多く、親密度が1.6未満のもの。
rownames(english)
行番号が隠れている。行番号の一覧表示。ほっておくとこれがそれぞれの行の先頭に隠されてついたままになっているので、場合によっては、クリアーして、1から行番号をつけ直して「リセット」した方が良いこともある。
rownames(english) <- c()とする。
english[1] 1列目と事実上同じ(データフレームとしてアクセス)
english[1,] 1行目(1件目のデータ)(第1レコード)
english[,1] 1列目にvectorとしてアクセス
> head(english[1])
RTlexdec
1 6.543754
2 6.397596
3 6.304942
4 6.424221
5 6.450597
6 6.531970
> head(english[,1])
[1] 6.543754 6.397596 6.304942 6.424221 6.450597 6.531970
> nrow(english)
[1] 4568
データフレームの行数
> ncol(english)
[1] 36
データフレームのカラム数
> english[1,1]
[1] 6.543754
> english[2,1]
[1] 6.397596
> english[1,5]
[1] young
Levels: old young
> english[1,6]
[1] N
Levels: N V
subsetsの取り出し方
> englishsubset <- english[1:8,1:5]
>
> englishsubset
RTlexdec RTnaming Familiarity Word AgeSubject
1 6.543754 6.145044 2.37 doe young
2 6.397596 6.246882 4.43 whore young
3 6.304942 6.143756 5.60 stress young
4 6.424221 6.131878 3.87 pork young
5 6.450597 6.198479 3.93 plug young
6 6.531970 6.167726 3.27 prop young
7 6.370586 6.123808 3.73 dawn young
8 6.266859 6.096050 5.67 dog young
english[english$AgeSubject =="young" & english$LengthInLetters <=4,]
年齢が「young」で、かつ、文字数が4以下のもの。
これがいくつあるかは、
> nrow(english[english$AgeSubject =="young" & english$LengthInLetters <=4,])
[1] 1351
具体的にどんな単語はか、4つ目のカラムがwordなので、
english[english$AgeSubject =="young" & english$LengthInLetters <=4,4]
rowのバインド rbind(a, b) データフレームを上下でつなげる
columnのバインド cbind(x, y) データフレームを左右でつなげる
●反応時間データを例に。english.txt
ヘッダー付きでファイル読み込み:
read.table("english.txt", header=T)
" "の中にURLを書けば、そのまま、インターネットからダウンロードできる。
ファイルの保存
english <- read.table("english.txt", header=T)
a == b 同じか?
a != b 違うか?
> pi
[1] 3.141593
デフォルトでは、少数6桁まで表示
data frame = data table
一つのvectorは同じ「型」でないといけない。
Each column is a vector.
> names(english) でヘッダーが一覧が出る。
english$Word で、Wordのカラム一覧が出る。
english[english$LengthInLetters > 5,1:5]
インデックス番号を書くべきところに条件を書いてしまうことができる。
文字数が5文字よりも多いものについて、1から5番のカラムを出力する。
english[(english$LengthInLetters > 5) & (english$Familiarity < 1.6),1:5]
複数の条件に合致するものを出す。&で。文字数5文字より多く、親密度が1.6未満のもの。
rownames(english)
行番号が隠れている。行番号の一覧表示。ほっておくとこれがそれぞれの行の先頭に隠されてついたままになっているので、場合によっては、クリアーして、1から行番号をつけ直して「リセット」した方が良いこともある。
rownames(english) <- c()とする。
english[1] 1列目と事実上同じ(データフレームとしてアクセス)
english[1,] 1行目(1件目のデータ)(第1レコード)
english[,1] 1列目にvectorとしてアクセス
> head(english[1])
RTlexdec
1 6.543754
2 6.397596
3 6.304942
4 6.424221
5 6.450597
6 6.531970
> head(english[,1])
[1] 6.543754 6.397596 6.304942 6.424221 6.450597 6.531970
> nrow(english)
[1] 4568
データフレームの行数
> ncol(english)
[1] 36
データフレームのカラム数
> english[1,1]
[1] 6.543754
> english[2,1]
[1] 6.397596
> english[1,5]
[1] young
Levels: old young
> english[1,6]
[1] N
Levels: N V
subsetsの取り出し方
> englishsubset <- english[1:8,1:5]
>
> englishsubset
RTlexdec RTnaming Familiarity Word AgeSubject
1 6.543754 6.145044 2.37 doe young
2 6.397596 6.246882 4.43 whore young
3 6.304942 6.143756 5.60 stress young
4 6.424221 6.131878 3.87 pork young
5 6.450597 6.198479 3.93 plug young
6 6.531970 6.167726 3.27 prop young
7 6.370586 6.123808 3.73 dawn young
8 6.266859 6.096050 5.67 dog young
english[english$AgeSubject =="young" & english$LengthInLetters <=4,]
年齢が「young」で、かつ、文字数が4以下のもの。
これがいくつあるかは、
> nrow(english[english$AgeSubject =="young" & english$LengthInLetters <=4,])
[1] 1351
具体的にどんな単語はか、4つ目のカラムがwordなので、
english[english$AgeSubject =="young" & english$LengthInLetters <=4,4]
rowのバインド rbind(a, b) データフレームを上下でつなげる
columnのバインド cbind(x, y) データフレームを左右でつなげる