Увод у факторе у Р

У Р можемо обрадити различите врсте променљивих. Фактор такође можемо претпоставити као врсту променљиве која узима само ограничен број додељене вредности; таква варијабла се такође назива категорична варијабла.

Предности фактора

  • У њега се могу сместити и цели бројеви и низови

1. У случају целих бројева

data = c(5, 6, 6, 6, 7, 5, 7, 6, 7, 5, 6, 7)
factor_data = factor(data)
factor_data

Излаз

2. У случају жице

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"))
y

Излаз

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y

Излаз

  • Веома корисно када ступци имају ограничен број јединствених вредности
ИмеНачин путовања
ЈохнКамион
СхавЦар
ЛееЦиклус
МусанБицикл
ЛозиКамион
РииаЦар
МијЦиклус

Овде имамо ограничен број јединствених вредности у колони 2.

  • Помаже исправљању струна помоћу погрешака при упису (грешке куцања).

Како створити фактор у Р?

Факторе можемо створити користећи факторе кода ().

Истражите више о фактору ().

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

Где,

Кс је скуп категоријских података. Као што смо већ расправљали, то би требало бити низ или цели бројеви.

Нивои су постављени у вриједности које може узети Кс. Нивои садрже сву јединствену вредност доступну у колони (к).

Ознаке као назив сугерирају означавање података доступних на Кс.

Наручени одређује да ли нивое треба да буду одређени било којим одређеним редоследом.

Пример # 1

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike"))
y

Излаз:

Пример бр. 2

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y

Излаз:

У примеру 2 можемо видети да такође можемо дефинисати и „Нивое“.

Сада ћемо видјети више о факторима користећи Стр (и).

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y

Излаз:

str(y)

Излаз:

Јасно се види да су фактори похрањени као цели вектори, а нивои су сачувани као вектор знакова, а појединачни елементи су заправо похрањени као индекси.

  • Сада ћемо видети како приступити компонентама фактора

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y

Излаз:

y(2) # helps to access 2nd element

Излаз:

x(c(3, 4)) # helps to access 3rd and 4th element

Излаз

x(-1) # access all except 1st element

Излаз:

  • Сада ћемо видети како да променимо фактор.

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y

Излаз:

y(3) = "Truck" #modifty third element
y

Излаз

Додавање фактору:

y(10) = "Car"
y

Излаз:

Имајте на уму да не можемо доделити ништа фактору који није део нивоа.

y(4) = "Plane"Warning message:In `(<-.factor`(`*tmp*`, 4, value = "Plane") : invalid factor level, NA generated

Излаз:

У овом примеру можемо видети да „Равнина“ није део нашег нивоа, па смо добили поруку упозорења која каже да је „авион“ неважећи ниво фактора.

Претварање података у фактор

Подаци су доступни у великом броју, а сваки је пут тешко уписати цјелокупну ријеч у код, тако да за ово прво ћемо податке претворити у фактор, а затим претворити фактор у лик или број према нашим погодностима.

Хајде да сада радимо на неким стварним подацима. Тамо где имамо 50 посматрања и подносиоци захтева дају свој смер рада. Као што Џон путује на север ради својих радних обавеза или Сам путује у правцу Југа због својих радних обавеза.

direction <- c("West", "East", "North", "West", "South", "East", "South", "East", "South", "East", "South", "West", "South", "East", "South", "East", "South", "South", "West", "East", "South", "West", "South", "East", "South", "East", "South", "West", "East", "South", "West", "South", "East", "South", "East", "South", "South", "West", "South", "West", "East", "South", "West", "South", "East", "South", "East", "South", "South", "West")
direction.factor = factor(direction)
direction.factor

Излаз:

Нивои: Источни сјевер, југозапад

Сада ако желимо претворити фактор у карактер вектора:

Користићемо код ас.цхарацтер ().

as.character(direction.factor)

Излаз:

Или желимо да фактор претворимо у нумерички вектор:

Користит ћемо ас.нумериц () код.

as.numeric(direction.factor)

Излаз:

Препоручени чланци

Ово је водич за факторе у Р. Овде разговарамо о уводу, Предности фактора, Како створити фактор у Р заједно са излазима. Можете и да прођете кроз друге наше предложене чланке да бисте сазнали више -

  1. Спарк СКЛ Датафраме
  2. Р Типови података
  3. Вишедимензионална база података
  4. АВС Дата Пипелине

Категорија: