
データ型とデータ構造の覚え書き。
データ型
データ構造を調べたり変換したりする場合は、下記関数が用意されている。
データ型には以下の関数が用意されている。
データ型 | データ型を調べる | データ型を変換する |
---|---|---|
モード | mode() | storage.mode() |
実数 | is.numeric() | as.numeric() |
整数 | is.integer() | as.integer() |
実数(整数も含む) | is.integer() | as.integer() |
複素数 | is.complex() | as.complex() |
文字列 | is.character() | as.character() |
論理値 | is.logical() | as.logical() |
このうち、私がよく使用するのは、下記。
- numeric (実数)
- character (文字列)
- logical (論理値)
- integer (整数)
データ型の注意事項
1つのベクトルの中に、複数の型を入れることはできず、どれかの型に統一される。
その大小関係は、
character > complex > numeric > logical > NULL
の順。
例えば、演算式中、実数値が期待されている時に論理値が現れたりすると、
- TRUE → 1
- FALSE → 0
のように変換される。
逆に、演算式中、論理値が期待されている時に実数値が現れたりすると、
- 0 でない数 → TRUE
- 0 → FALSE
のように変換される。
ここで、0でない数が全部 "TRUE" に変換されることに注意 (3.4 とかの数字でも "TRUE" になる。)。
データ構造
データ構造を調べたり変換したりする場合は、下記関数が用意されている。
データ構造 | データ構造を調べる | データ構造を変換する |
---|---|---|
ベクトル | is.vector() | as.vector() |
行列 | is.matrix() | as.matrix() |
配列 | is.arry() | as.array() |
リスト | is.list() | as.list() |
データフレーム | is.data.frame() | as.data.frame() |
順序なし因子 | is.factor() | as.factor() |
順序つき因子 | is.ordered() | as.ordered() |
このうち、私がよく使用するのは、下記。
- data.frame
- factor
- vector
- matrix
- array
- list