【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
>