【Rによるデータサイエンス】第2章 データの入出力と編集
◎ベクトルと長さ
長さはlengthを用いる。
> sales<-c(15,20,25,10,30) > length(sales) [1] 5
◎ベクトルのラベル
文字ベクトルを数値ベクトルの各要素のラベルとして付け加える。
> fruits<-c("なし","林檎","葡萄","桃","その他") > names(sales)<-fruits > sales なし 林檎 葡萄 桃 その他 15 20 25 10 30
◎行列(マトリックス)
行列には、マトリックスとデータフレームの2種類がある。
・行列の作成と代入
> sales2<-matrix(0,2,5) #sales2を2行5列の行列として定義。すべての要素は0。 > sales2[1,] [1] 0 0 0 0 0 > sales2[1,]<-c(15,20,25,10,30) #1行目に代入 > sales2[1,] [1] 15 20 25 10 30 > sales2[2,]<-c(15,20,25,10,30) #2行目に代入 > sales2[2,] [1] 15 20 25 10 30 > sales2 [,1] [,2] [,3] [,4] [,5] [1,] 15 20 25 10 30 [2,] 15 20 25 10 30 >
・行列の行数と列数を求める
> nrow(sales2) [1] 2 > ncol(sales2) [1] 5
・列のラベルをつける
> colnames(sales2)<-fruits > rownames(sales2)<-c("A","B") > sales2 なし 林檎 葡萄 桃 その他 A 15 20 25 10 30 B 15 20 25 10 30
◎行列(データフレーム)
データフレーム関数data.frameを使用してデータフレームを作成する。
> DF1<-data.frame(cbind(LETTERS[1:4 + ],3:0)) > DF1 X1 X2 1 A 3 2 B 2 3 C 1 4 D 0 > colnames(DF1)<-c("col1","col2") > DF1 col1 col2 1 A 3 2 B 2 3 C 1 4 D 0 >
◎データフレームからマトリックスへの変換
as.matrix()を使用する。
◎マトリックスからデータフレームへの変換
as.data.frameを使用する。
> as.matrix(DF1) col1 col2 [1,] "A" "3" [2,] "B" "2" [3,] "C" "1" [4,] "D" "0" > as.data.frame(DF1) col1 col2 1 A 3 2 B 2 3 C 1 4 D 0 >
◎配列
> AR1<-array(1:30,c(2,5,3)) > AR1 , , 1 [,1] [,2] [,3] [,4] [,5] [1,] 1 3 5 7 9 [2,] 2 4 6 8 10 , , 2 [,1] [,2] [,3] [,4] [,5] [1,] 11 13 15 17 19 [2,] 12 14 16 18 20 , , 3 [,1] [,2] [,3] [,4] [,5] [1,] 21 23 25 27 29 [2,] 22 24 26 28 30
◎リスト
省略
◎データ形式の確認
class関数を使用する。
> class(sales) [1] "numeric" > class(sales2) [1] "matrix" > class(DF1) [1] "data.frame" > is.vector(DF1) [1] FALSE >