R - Faktörler
Faktörler, verileri kategorize etmek ve seviyeler halinde saklamak için kullanılan veri nesneleridir. Hem dizeleri hem de tam sayıları depolayabilirler. Sınırlı sayıda benzersiz değere sahip sütunlarda kullanışlıdırlar. "Erkek", "Kadın" ve Doğru, Yanlış vb. Gibi. İstatistiksel modelleme için veri analizinde faydalıdırlar.
Faktörler kullanılarak oluşturulur factor () girdi olarak bir vektör alarak fonksiyon.
Misal
# Create a vector as input.
data <- c("East","West","East","North","North","East","West","West","West","East","North")
print(data)
print(is.factor(data))
# Apply the factor function.
factor_data <- factor(data)
print(factor_data)
print(is.factor(factor_data))
Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -
[1] "East" "West" "East" "North" "North" "East" "West" "West" "West" "East" "North"
[1] FALSE
[1] East West East North North East West West West East North
Levels: East North West
[1] TRUE
Veri Çerçevesindeki Faktörler
Bir metin verisi sütunuyla herhangi bir veri çerçevesi oluştururken, R, metin sütununu kategorik veri olarak ele alır ve üzerinde faktörler oluşturur.
# Create the vectors for data frame.
height <- c(132,151,162,139,166,147,122)
weight <- c(48,49,66,53,67,52,40)
gender <- c("male","male","female","female","male","female","male")
# Create the data frame.
input_data <- data.frame(height,weight,gender)
print(input_data)
# Test if the gender column is a factor.
print(is.factor(input_data$gender))
# Print the gender column so see the levels.
print(input_data$gender)
Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -
height weight gender
1 132 48 male
2 151 49 male
3 162 66 female
4 139 53 female
5 166 67 male
6 147 52 female
7 122 40 male
[1] TRUE
[1] male male female female male female male
Levels: female male
Seviye Sırasını Değiştirme
Bir faktördeki seviyelerin sırası, seviyelerin yeni sıralaması ile tekrar faktör fonksiyonu uygulanarak değiştirilebilir.
data <- c("East","West","East","North","North","East","West",
"West","West","East","North")
# Create the factors
factor_data <- factor(data)
print(factor_data)
# Apply the factor function with required order of the level.
new_order_data <- factor(factor_data,levels = c("East","West","North"))
print(new_order_data)
Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -
[1] East West East North North East West West West East North
Levels: East North West
[1] East West East North North East West West West East North
Levels: East West North
Faktör Seviyeleri Oluşturma
Faktör seviyelerini, gl()işlevi. Girdi olarak iki tamsayı alır, bu da her seviyede kaç seviye ve kaç kez olduğunu gösterir.
Sözdizimi
gl(n, k, labels)
Kullanılan parametrelerin açıklaması aşağıdadır -
n düzey sayısını veren bir tam sayıdır.
k yineleme sayısını veren bir tam sayıdır.
labels ortaya çıkan faktör seviyeleri için bir etiket vektörüdür.
Misal
v <- gl(3, 4, labels = c("Tampa", "Seattle","Boston"))
print(v)
Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -
Tampa Tampa Tampa Tampa Seattle Seattle Seattle Seattle Boston
[10] Boston Boston Boston
Levels: Tampa Seattle Boston