~Rプログラミング~【Statistics with “R”】
データの型と構造
~Rプログラミング~【Statistics with “R”】
Rではデータの構造や型が関数などに想定されたものと異なるとエラーが出てしまい、命令が実行できない場合があります。なので、データの型について知っておくとトラブルを回避することが出来ます。
データの型
たとえば、データの型は以下のようなものがあります。
データの型 | R上での表記 |
実数 | numeric |
整数 | integer |
複素数 | complex |
文字列 | character |
論理値 | logical |
自分の興味のある変数の型がわからなければ、is.xxxx( )関数を用いることで下図のように確認することができきます。
命令 | コード |
xが実数か真偽(TRUE/FALSE)を調べる。 | is.numeric(x) |
xが整数か真偽(TRUE/FALSE)を調べる。 | is.integer(x) |
xが複素数か真偽(TRUE/FALSE)を調べる。 | is.complex(x) |
xが文字列か真偽(TRUE/FALSE)を調べる。 | is.character(x) |
xが論理値か真偽(TRUE/FALSE)を調べる。 | is.logical(x) |
as.xxxx( )関数を用いることで、変数の型を変更することもでききます。
命令 | コード |
xが実数だと宣言する。 | is.numeric(x) |
xが整数だと宣言する。 | is.integer(x) |
xが複素数だと宣言する。 | is.complex(x) |
xが文字列だと宣言する。 | is.character(x) |
xが論理値だと宣言する。 | is.logical(x) |
実数を文字列に変換し、変換したものが文字列になっているのか確認してみましょう。
is.charcter("あ") #"あ"が文字列型か調べる is.integer("あ") #"あ"が整数型か調べる is.integer("1") #"1"が整数型か調べる is.integer(1) #1が整数型か調べる is.integer(1.0) #1.0が整数型か調べる is.numeric(1) #1が実数型か調べる
出力はこちら
代入によって作られた変数にも同様に適用できる。
A <- 5 is.numeric(A) B <- as.numeric(A) B is.numeric(B)
データの構造
データの構造 | R上での表記 |
ベクトル | vector |
行列 | matrix |
配列 | array |
リスト | list |
データフレーム | data.frame |
因子(順序なし) | factor |
因子(順序あり) | ordered |
行列をデータフレームに変換し、データフレームに変換されたことを確かめる。
A <- c(1,2,3,4,5) B <- c(1,0,1,0,1) is.vector(A) is.vector(B) is.data.frame(A) is.data.frame(B) C <- cbind(A,B) is.matrix(C) is.vector(C) is.data.frame(C) D <- as.data.frame(C) is.data.frame(D) is.matrix(D)