以下はR言語のデータ型とその説明、型変換関数をまとめた表になります。詳細は下記をご覧になってください。
| データ型 | 説明 | 型変換関数 |
|---|---|---|
| numeric | 数値(実数) | as.numeric() |
| integer | 整数 | as.integer() |
| character | 文字列 | as.character() |
| logical | 論理値(TRUE/FALSE) | as.logical() |
| factor | カテゴリカル変数 | as.factor() |
| Date | 日付 | as.Date() |
| POSIXct | 日時 | as.POSIXct() |
| complex | 複素数 | as.complex() |
以下に主なデータ型の使いかたの説明を記載して行きます。
1. 数値型
Rでは、数値は主に2つの型で表現されます:整数(integer)と倍精度浮動小数点数(double)。
整数(Integer)
整数は、小数点を含まない whole number です。
x <- 5L # 'L'をつけると明示的に整数型になります
class(x) # "integer"
倍精度浮動小数点数(Double)
小数点を含む数値は、デフォルトで double 型になります。
y <- 5.5
class(y) # "numeric" (これは double 型を指します)
数値演算
基本的な算術演算子
- 加算:
+ - 減算:
- - 乗算:
* - 除算:
/ - べき乗:
^ - 剰余:
%%
a <- 10
b <- 3
a + b # 13
a - b # 7
a * b # 30
a / b # 3.333333
a ^ b # 1000
a %% b # 1
2. 文字列型(Character)
文字列は、シングルクォート(’)またはダブルクォート(”)で囲んで表現します。
name <- "Alice"
class(name) # "character"
文字列操作
- 文字列の結合:
paste()またはpaste0() - 部分文字列の抽出:
substr() - 文字列の長さ:
nchar()
first_name <- "John"
last_name <- "Doe"
full_name <- paste(first_name, last_name)
full_name # "John Doe"
substr(full_name, 1, 4) # "John"
nchar(full_name) # 8
3. 論理型(Logical)
論理値は TRUE または FALSE で表現されます。
is_student <- TRUE
class(is_student) # "logical"
Factor型の作成
Factor型はfactor()関数を使用して作成します。
# 文字列ベクトルをFactor型に変換
colors <- c("red", "blue", "green", "blue", "red")
factor_colors <- factor(colors)
# 確認
print(factor_colors)
# [1] red blue green blue red
# Levels: blue green red
レベルを指定する
factor()関数で明示的にレベルを指定することも可能です。
# レベルの順序を指定
sizes <- c("small", "large", "medium", "large", "small")
factor_sizes <- factor(sizes, levels = c("small", "medium", "large"))
print(factor_sizes)
# [1] small large medium large small
# Levels: small medium large
順序付き因子(Ordered Factor)
順序付き因子を作成するには、ordered = TRUEを指定します。
# 順序付き因子の作成
grades <- c("B", "A", "C", "A", "B")
ordered_grades <- factor(grades, levels = c("C", "B", "A"), ordered = TRUE)
print(ordered_grades)
# [1] B A C A B
# Levels: C < B < A