Фактор в R: Категорична променлива & Непрекъснати променливи

Съдържание:

Anonim

Какво е фактор в R?

Factor in R е променлива, използвана за категоризиране и съхраняване на данните, имаща ограничен брой различни стойности. Той съхранява данните като вектор на целочислени стойности. Факторът в R е известен също като категорична променлива, която съхранява както низови, така и целочислени данни като нива. Факторът се използва най-вече при статистическо моделиране и изследователски анализ на данни с R.

В набор от данни можем да различим два типа променливи: категорични и непрекъснати .

  • В описателната статистика за категориалните променливи в R стойността е ограничена и обикновено се основава на определена крайна група. Например, категорична променлива в R може да бъде държави, година, пол, професия.
  • Непрекъсната променлива обаче може да приема всякакви стойности, от цяло число до десетично. Например, можем да имаме приходи, цена на акция и т.н. ...

Категорични променливи

Категоричните променливи в R се съхраняват във фактор. Нека проверим кода по-долу, за да преобразуваме променлива на символ в променлива на фактор в R. Символите не се поддържат в алгоритъма за машинно обучение и единственият начин е да преобразуваме низ в цяло число.

Синтаксис

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

Аргументи:

  • x : вектор на категорични данни в R. Трябва да бъде низ или цяло число, а не десетично.
  • Нива : вектор от възможни стойности, взети от x. Този аргумент не е задължителен. Стойността по подразбиране е уникалният списък с елементи от вектора x.
  • Етикети : Добавете етикет към x категоричните данни в R. Например, 1 може да вземе етикета „мъжки“, докато 0, етикетът „женски“.
  • наредено : Определете дали нивата трябва да бъдат подредени в категорични данни в R.

Пример:

Нека създадем факторна рамка за данни.

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

Изход:

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

Важно е да преобразуваме низ в факторна променлива в R, когато изпълняваме задача за машинно обучение.

Категориалната променлива в R може да бъде разделена на номинална категориална променлива и редовна категориална променлива .

Номинална категорична променлива

Категоричната променлива има няколко стойности, но редът няма значение. Например мъж или жена. Категоричните променливи в R нямат подреждане.

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

Изход:

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

От factor_color не можем да определим никаква поръчка.

Обикновена категорична променлива

Обикновените категориални променливи имат естествено подреждане. Можем да посочим поръчката, от най-ниската до най-високата с поръчка = TRUE и най-високата до най-ниската с поръчка = FALSE.

Пример:

Можем да използваме резюме, за да преброим стойностите за всяка променлива на фактора в R.

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

Изход:

## [1] evening morning afternoon middaymidnight evening 

Пример:

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

Изход:

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

R нарежда нивото от "сутрин" до "полунощ", както е посочено в скобите за нива.

Непрекъснати променливи

Непрекъснатите променливи на класа са стойността по подразбиране в R. Те се съхраняват като числови или цели числа. Можем да го видим от набора от данни по-долу. mtcars е вграден набор от данни. Той събира информация за различни видове автомобили. Можем да го импортираме с помощта на mtcars и да проверим класа на променливата mpg, миля на галон. Той връща числова стойност, показваща непрекъсната променлива.

dataset <- mtcarsclass(dataset$mpg)

Изход

## [1] "numeric"