R - Hệ số

Factors là các đối tượng dữ liệu được sử dụng để phân loại dữ liệu và lưu trữ nó dưới dạng các cấp. Chúng có thể lưu trữ cả chuỗi và số nguyên. Chúng hữu ích trong các cột có một số giá trị duy nhất hạn chế. Như "Nam", "Nữ" và Đúng, Sai, v.v. Chúng rất hữu ích trong việc phân tích dữ liệu để lập mô hình thống kê.

Các yếu tố được tạo ra bằng cách sử dụng factor () chức năng bằng cách lấy một vectơ làm đầu vào.

Thí dụ

# 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))

Khi chúng tôi thực thi đoạn mã trên, nó tạo ra kết quả sau:

[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

Các yếu tố trong khung dữ liệu

Khi tạo bất kỳ khung dữ liệu nào với một cột dữ liệu văn bản, R coi cột văn bản là dữ liệu phân loại và tạo các yếu tố trên đó.

# 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)

Khi chúng tôi thực thi đoạn mã trên, nó tạo ra kết quả sau:

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

Thay đổi thứ tự các cấp

Thứ tự của các cấp trong một yếu tố có thể được thay đổi bằng cách áp dụng lại hàm nhân tố với thứ tự mới của các cấp.

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)

Khi chúng tôi thực thi đoạn mã trên, nó tạo ra kết quả sau:

[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

Các mức nhân tố tạo ra

Chúng tôi có thể tạo các mức nhân tố bằng cách sử dụng gl()chức năng. Nó có hai số nguyên làm đầu vào cho biết có bao nhiêu cấp độ và bao nhiêu lần mỗi cấp độ.

Cú pháp

gl(n, k, labels)

Sau đây là mô tả về các tham số được sử dụng:

  • n là một số nguyên cho biết số cấp độ.

  • k là một số nguyên cho số lần lặp lại.

  • labels là một vectơ nhãn cho các mức yếu tố kết quả.

Thí dụ

v <- gl(3, 4, labels = c("Tampa", "Seattle","Boston"))
print(v)

Khi chúng tôi thực thi đoạn mã trên, nó tạo ra kết quả sau:

Tampa   Tampa   Tampa   Tampa   Seattle Seattle Seattle Seattle Boston 
[10] Boston  Boston  Boston 
Levels: Tampa Seattle Boston