Co to jest czynnik w R?
Współczynnik R to zmienna używana do kategoryzowania i przechowywania danych, mająca ograniczoną liczbę różnych wartości. Przechowuje dane jako wektor wartości całkowitych. Współczynnik w R jest również znany jako zmienna kategorialna, która przechowuje wartości danych w postaci łańcuchów i liczb całkowitych jako poziomy. Współczynnik jest najczęściej używany w modelowaniu statystycznym i eksploracyjnej analizie danych z R.
W zbiorze danych możemy wyróżnić dwa typy zmiennych: kategorialne i ciągłe .
- W statystyce opisowej dla zmiennych kategorialnych w R wartość jest ograniczona i zwykle oparta na określonej grupie skończonej. Na przykład zmienną kategorialną w R może być kraj, rok, płeć, zawód.
- Jednak zmienna ciągła może przyjmować dowolne wartości, od liczby całkowitej do dziesiętnej. Na przykład możemy mieć przychód, cenę udziału itp.
Zmienne kategorialne
Zmienne kategorialne w R są przechowywane jako czynnik. Sprawdźmy poniższy kod, aby przekonwertować zmienną znakową na zmienną czynnika w R. Znaki nie są obsługiwane w algorytmie uczenia maszynowego, a jedynym sposobem jest przekonwertowanie ciągu znaków na liczbę całkowitą.
Składnia
factor(x = character(), levels, labels = levels, ordered = is.ordered(x))
Argumenty:
- x : Wektor danych kategorialnych w R. Musi być łańcuchem lub liczbą całkowitą, a nie dziesiętną.
- Poziomy : wektor możliwych wartości przyjmowanych przez x. Ten argument jest opcjonalny. Wartością domyślną jest unikalna lista elementów wektora x.
- Etykiety : dodaj etykietę do danych kategorycznych x w R. Na przykład 1 może przyjąć etykietę „mężczyzna”, a 0 etykietę „kobieta”.
- uporządkowane : Określ, czy poziomy powinny być uporządkowane w danych kategorycznych w R.
Przykład:
Stwórzmy ramkę danych czynnikowych.
# 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)
Wynik:
## [1] "character"## [1] "factor"
Ważne jest, aby przekształcić ciąg znaków w zmienną czynnikową w języku R, gdy wykonujemy zadanie uczenia maszynowego.
Zmienną kategorialną w R można podzielić na nominalną zmienną kategorialną i porządkową zmienną jakościową .
Nominalna zmienna kategorialna
Zmienna kategorialna ma kilka wartości, ale kolejność nie ma znaczenia. Na przykład mężczyzna lub kobieta. Zmienne kategorialne w R nie mają uporządkowania.
# Create a color vectorcolor_vector <- c('blue', 'red', 'green', 'white', 'black', 'yellow')# Convert the vector to factorfactor_color <- factor(color_vector)factor_color
Wynik:
## [1] blue red green white black yellow## Levels: black blue green red white yellow
Na podstawie factor_color nie możemy określić żadnej kolejności.
Zmienna kategorialna porządkowa
Porządkowe zmienne kategorialne mają naturalną kolejność. Możemy określić kolejność, od najniższej do najwyższej za pomocą order = TRUE i od najwyższej do najniższej za pomocą order = FALSE.
Przykład:
Możemy użyć podsumowania, aby policzyć wartości dla każdej zmiennej czynnikowej w 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
Wynik:
## [1] evening morning afternoon middaymidnight evening
Przykład:
## Levels: morning < midday < afternoon < evening < midnight# Append the line to above code# Count the number of occurence of each levelsummary(factor_day)
Wynik:
## morning midday afternoon evening midnight## 1 1 1 2 1
R uporządkował poziom od „rano” do „północy”, jak określono w nawiasach poziomów.
Zmienne ciągłe
Ciągłe zmienne klasy są wartością domyślną w R. Są przechowywane jako liczby lub liczby całkowite. Możemy to zobaczyć na podstawie zbioru danych poniżej. mtcars to wbudowany zestaw danych. Zbiera informacje o różnych typach samochodów. Możemy go zaimportować za pomocą mtcars i sprawdzić klasę zmiennej mpg, mila na galon. Zwraca wartość liczbową, wskazującą na zmienną ciągłą.
dataset <- mtcarsclass(dataset$mpg)
Wynik
## [1] "numeric"