Dường như có sự khác biệt giữa các mức và nhãn của một yếu tố trong R. Cho đến nay, tôi luôn nghĩ rằng các mức là tên 'thực' của các mức nhân tố và nhãn là tên được sử dụng cho đầu ra (chẳng hạn như bảng và biểu đồ) . Rõ ràng, đây không phải là trường hợp, như ví dụ sau cho thấy:
df <- data.frame(v=c(1,2,3),f=c('a','b','c'))
str(df)
'data.frame': 3 obs. of 2 variables:
$ v: num 1 2 3
$ f: Factor w/ 3 levels "a","b","c": 1 2 3
df$f <- factor(df$f, levels=c('a','b','c'),
labels=c('Treatment A: XYZ','Treatment B: YZX','Treatment C: ZYX'))
levels(df$f)
[1] "Treatment A: XYZ" "Treatment B: YZX" "Treatment C: ZYX"
Tôi nghĩ rằng các cấp ('a', 'b', 'c') bằng cách nào đó vẫn có thể được truy cập khi viết script, nhưng điều này không hoạt động:
> df$f=='a'
[1] FALSE FALSE FALSE
Nhưng điều này không:
> df$f=='Treatment A: XYZ'
[1] TRUE FALSE FALSE
Vì vậy, câu hỏi của tôi bao gồm hai phần:
Sự khác biệt giữa các cấp và nhãn là gì?
Có thể có các tên khác nhau cho các mức yếu tố cho tập lệnh và đầu ra không?
Thông tin cơ bản: Đối với các kịch bản dài hơn, viết kịch bản với các cấp độ yếu tố ngắn có vẻ dễ dàng hơn nhiều. Tuy nhiên, đối với các báo cáo và biểu đồ, các mức hệ số ngắn này có thể không đủ và cần được thay thế bằng các tên tiền kiểm tra.