R'deki bir faktörün seviyeleri ve etiketleri arasında bir fark var gibi görünüyor Şimdiye kadar, seviyelerin faktör seviyelerinin 'gerçek' adı olduğunu ve çıktı için kullanılan isimler etiketlerin olduğunu düşünmüştüm (tablolar ve grafikler gibi) . Açıkçası, aşağıdaki örnekte gösterildiği gibi durum böyle değildir:
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"
Komut dosyası oluştururken ('a', 'b', 'c') seviyelerine bir şekilde hala erişilebileceğini düşündüm, ancak bu işe yaramıyor:
> df$f=='a'
[1] FALSE FALSE FALSE
Ancak bu:
> df$f=='Treatment A: XYZ'
[1] TRUE FALSE FALSE
Öyleyse sorum iki bölümden oluşuyor:
Seviyeler ve etiketler arasındaki fark nedir?
Komut dosyası oluşturma ve çıktı için faktör seviyeleri için farklı adlara sahip olmak mümkün müdür?
Arka plan: Daha uzun komut dosyaları için, kısa faktör seviyeli komut dosyası yazmak çok daha kolay görünüyor. Bununla birlikte, raporlar ve grafikler için, bu kısa faktör seviyeleri yeterli olmayabilir ve kesin isimlerle değiştirilmelidir.