R-data-types

提供:Dev Guides
移動先:案内検索

R-データ型

一般に、プログラミング言語でプログラミングを行う際には、さまざまな変数を使用してさまざまな情報を保存する必要があります。 変数は、値を保存するために予約されたメモリの場所に他なりません。 これは、変数を作成するときに、メモリの一部の領域を予約することを意味します。

文字、ワイド文字、整数、浮動小数点、二重浮動小数点、ブールなどのさまざまなデータ型の情報を保存することができます。 変数のデータ型に基づいて、オペレーティングシステムはメモリを割り当て、予約メモリに保存できるものを決定します。

RのCやjavaなどの他のプログラミング言語とは対照的に、変数は何らかのデータ型として宣言されていません。 変数にはRオブジェクトが割り当てられ、Rオブジェクトのデータ型は変数のデータ型になります。 Rオブジェクトには多くの種類があります。 頻繁に使用されるものは-

  • ベクトル
  • リスト
  • 行列
  • 配列
  • 要因
  • データフレーム

これらのオブジェクトの中で最も単純なものは* vectorオブジェクト*であり、これらのアトミックベクトルには6つのデータ型があり、6つのクラスのベクトルとも呼ばれます。 他のRオブジェクトは、アトミックベクトルに基づいて構築されます。

Data Type Example Verify
Logical TRUE, FALSE
v <- TRUE
print(class(v))

それは次の結果を生成します-

[1] "logical"
Numeric 12.3, 5, 999
v <- 23.5
print(class(v))

それは次の結果を生成します-

[1] "numeric"
Integer 2L, 34L, 0L
v <- 2L
print(class(v))

それは次の結果を生成します-

[1] "integer"
Complex 3 PLUS 2i
v <- 2+5i
print(class(v))

それは次の結果を生成します-

[1] "complex"
Character 'a' , '"good", "TRUE", '23.4'
v <- "TRUE"
print(class(v))

それは次の結果を生成します-

[1] "character"
Raw "Hello" is stored as 48 65 6c 6c 6f
v <- charToRaw("Hello")
print(class(v))

それは次の結果を生成します-

[1] "raw"

Rプログラミングでは、非常に基本的なデータ型は vectors と呼ばれるRオブジェクトであり、上記のように異なるクラスの要素を保持します。 Rでは、クラスの数が上記の6つのタイプだけに限定されないことに注意してください。 たとえば、多くのアトミックベクトルを使用して、クラスが配列になる配列を作成できます。

ベクトル

複数の要素を含むベクターを作成する場合は、* c()*関数を使用して、要素をベクターに結合する必要があります。

# Create a vector.
apple <- c('red','green',"yellow")
print(apple)

# Get the class of the vector.
print(class(apple))

上記のコードを実行すると、次の結果が生成されます-

[1] "red"    "green"  "yellow"
[1] "character"

リスト

リストは、ベクトル、関数、さらには別のリストなど、さまざまなタイプの要素を含むことができるRオブジェクトです。

# Create a list.
list1 <- list(c(2,5,3),21.3,sin)

# Print the list.
print(list1)

上記のコードを実行すると、次の結果が生成されます-

[[function (x)  .Primitive("sin")

行列

マトリックスは、2次元の長方形のデータセットです。 行列関数へのベクトル入力を使用して作成できます。

# Create a matrix.
M = matrix( c('a','a','b','c','b','a'), nrow = 2, ncol = 3, byrow = TRUE)
print(M)

上記のコードを実行すると、次の結果が生成されます-

     [,1] [,2] [,3]
[1,] "a"  "a"  "b"
[2,] "c"  "b"  "a"

配列

行列は2次元に制限されていますが、配列は任意の次元数にすることができます。 配列関数は、必要な次元数を作成するdim属性を取ります。 以下の例では、それぞれ3x3のマトリックスである2つの要素を持つ配列を作成します。

# Create an array.
a <- array(c('green','yellow'),dim = c(3,3,2))
print(a)

上記のコードを実行すると、次の結果が生成されます-

, , 1

     [,1]     [,2]     [,3]
[1,] "green"  "yellow" "green"
[2,] "yellow" "green"  "yellow"
[3,] "green"  "yellow" "green"

, , 2

     [,1]     [,2]     [,3]
[1,] "yellow" "green"  "yellow"
[2,] "green"  "yellow" "green"
[3,] "yellow" "green"  "yellow"

要因

因子は、ベクトルを使用して作成されるrオブジェクトです。 ラベルとしてベクトル内の要素の個別の値とともにベクトルを保存します。 ラベルは、数値、文字、ブールなどに関係なく、常に文字です。 入力ベクトル内。 これらは統計モデリングに役立ちます。

因子は* factor()関数を使用して作成されます。 *nlevels 関数は、レベルのカウントを提供します。

# Create a vector.
apple_colors <- c('green','green','yellow','red','red','red','green')

# Create a factor object.
factor_apple <- factor(apple_colors)

# Print the factor.
print(factor_apple)
print(nlevels(factor_apple))

上記のコードを実行すると、次の結果が生成されます-

[1] green  green  yellow red    red    red    green
Levels: green red yellow
[1] 3

データフレーム

データフレームは表形式のデータオブジェクトです。 データフレームのマトリックスとは異なり、各列には異なるモードのデータを含めることができます。 最初の列は数値、2番目の列は文字、3番目の列は論理値にすることができます。 等しい長さのベクトルのリストです。

データフレームは、* data.frame()*関数を使用して作成されます。

# Create the data frame.
BMI <-   data.frame(
   gender = c("Male", "Male","Female"),
   height = c(152, 171.5, 165),
   weight = c(81,93, 78),
   Age = c(42,38,26)
)
print(BMI)

上記のコードを実行すると、次の結果が生成されます-

  gender height weight Age
1   Male  152.0     81  42
2   Male  171.5     93  38
3 Female  165.0     78  26