R の因数分解: カテゴリ変数と連続変数

ファクターインRとは何ですか?

R を因数分解する データを分類して保存するために使用される変数であり、限られた数の異なる値があります。 データを整数値のベクトルとして保存します。 R の因子は、文字列と整数のデータ値の両方をレベルとして格納するカテゴリ変数としても知られています。 Factor は主に、R による統計モデリングと探索的データ分析で使用されます。

データセットでは、次の XNUMX 種類の変数を区別できます。 カテゴリー および 連続的な.

  • R のカテゴリ変数の記述統計では、値は制限されており、通常は特定の有限グループに基づいています。 たとえば、R のカテゴリ変数には、国、年、性別、職業を指定できます。
  • ただし、連続変数は、整数から小数までの任意の値を取ることができます。 たとえば、収益や株価などを取得できます。

カテゴリ変数

カテゴリ変数 R 因子に格納されます。 R で文字変数を因子変数に変換するための以下のコードを確認してみましょう。機械学習アルゴリズムでは文字はサポートされていないため、唯一の方法は文字列を整数に変換することです。

構文

factor(x = character(), levels, labels = levels, ordered = is.ordered(x))

引数:

  • x: R のカテゴリデータのベクトル。XNUMX 進数ではなく、文字列または整数である必要があります。
  • レベル: x が取り得る値のベクトル。 この引数はオプションです。 デフォルト値は、ベクトル x の項目の一意のリストです。
  • ラベル: R の x カテゴリカル データにラベルを追加します。たとえば、1 はラベル「男性」を取得できますが、0 はラベル「女性」を取得できます。
  • 順序付けられました: R のカテゴリ データでレベルを順序付けする必要があるかどうかを決定します。

サブスクリプション型フィットネスアプリでは、

因子データフレームを作成しましょう。

# Create gender vector
gender_vector <- c("Male", "Female", "Female", "Male", "Male")
class(gender_vector)
# Convert gender_vector to a factor
factor_gender_vector <-factor(gender_vector)
class(factor_gender_vector)

出力:

## [1] "character"
## [1] "factor"

を変革することが重要です string 機械学習タスクを実行するときに、R の因子変数に変換します。

R のカテゴリ変数は次のように分割できます。 名目上のカテゴリ変数 および 順序カテゴリ変数.

公称カテゴリ変数

カテゴリ変数には複数の値がありますが、順序は重要ではありません。 たとえば、男性か女性かです。 R のカテゴリ変数には順序付けがありません。

# Create a color vector
color_vector <- c('blue', 'red', 'green', 'white', 'black', 'yellow')
# Convert the vector to factor
factor_color <- factor(color_vector)
factor_color

出力:

## [1] blue   red    green  white  black  yellow
## Levels: black blue green red white yellow

Factor_color からは順序を知ることはできません。

順序カテゴリ変数

順序カテゴリ変数には自然な順序があります。 order = TRUE で最低から最高へ、order = FALSE で最高から最低へ順序を指定できます。

サブスクリプション型フィットネスアプリでは、

summary を使用して、R の各因子変数の値をカウントできます。

# Create Ordinal categorical vector 
day_vector <- c('evening', 'morning', 'afternoon', 'midday', 'midnight', 'evening')
# Convert `day_vector` to a factor with ordered level
factor_day <- factor(day_vector, order = TRUE, levels =c('morning', 'midday', 'afternoon', 'evening', 'midnight'))
# Print the new variable
factor_day

出力:

## [1] evening   morning   afternoon midday    
midnight  evening

サブスクリプション型フィットネスアプリでは、

## Levels: morning < midday < afternoon < evening < midnight
# Append the line to above code
# Count the number of occurence of each level
summary(factor_day)

出力:

##   morning    midday afternoon   evening  midnight
##         1         1         1         2         1

R は、レベルの括弧内に指定されているように、レベルを「朝」から「真夜中」まで順序付けしました。

連続変数

連続クラス変数は R のデフォルト値です。これらは数値または整数として格納されます。 以下のデータセットからそれを確認できます。 mtcars は組み込みのデータセットです。 様々な車種の情報をまとめています。 mtcars を使用してインポートし、変数 mpg のクラス (マイル/ガロン) を確認できます。 連続変数を示す数値を返します。

dataset <- mtcars
class(dataset$mpg)

出力

## [1] "numeric"