คำถามติดแท็ก levels

7
จัดลำดับระดับของปัจจัยใหม่โดยไม่ต้องเปลี่ยนลำดับของค่า
ฉันมีกรอบข้อมูลที่มีตัวแปรตัวเลขและfactorตัวแปรตามหมวดหมู่ ลำดับของระดับสำหรับปัจจัยเหล่านั้นไม่ใช่วิธีที่ฉันต้องการให้เป็น numbers <- 1:4 letters <- factor(c("a", "b", "c", "d")) df <- data.frame(numbers, letters) df # numbers letters # 1 1 a # 2 2 b # 3 3 c # 4 4 d ถ้าฉันเปลี่ยนลำดับของระดับตัวอักษรจะไม่อยู่ในตัวเลขที่สอดคล้องกันอีกต่อไป (ข้อมูลของฉันเป็นเรื่องไร้สาระทั้งหมดนับจากนี้เป็นต้นไป) levels(df$letters) <- c("d", "c", "b", "a") df # numbers letters # 1 1 …
124 r  levels 

4
`ระดับ <-` (นี่คือคาถาอะไร?
ในคำตอบสำหรับคำถามอื่น @Marek โพสต์วิธีแก้ปัญหาต่อไปนี้: https://stackoverflow.com/a/10432263/636656 dat &lt;- structure(list(product = c(11L, 11L, 9L, 9L, 6L, 1L, 11L, 5L, 7L, 11L, 5L, 11L, 4L, 3L, 10L, 7L, 10L, 5L, 9L, 8L)), .Names = "product", row.names = c(NA, -20L), class = "data.frame") `levels&lt;-`( factor(dat$product), list(Tylenol=1:3, Advil=4:6, Bayer=7:9, Generic=10:12) ) ซึ่งสร้างเป็นผลลัพธ์: [1] Generic Generic Bayer …
115 r  types  levels 

4
ggplot2 เก็บระดับ barplot ที่ไม่ได้ใช้
ฉันต้องการพล็อตระดับที่ไม่ได้ใช้ (นั่นคือระดับที่นับเป็น 0) ในพล็อตบาร์ของฉันอย่างไรก็ตามระดับที่ไม่ได้ใช้จะหลุดออกไปและฉันไม่สามารถหาวิธีรักษาได้ df &lt;- data.frame(type=c("A", "A", "A", "B", "B"), group=rep("group1", 5)) df$type &lt;- factor(df$type, levels=c("A","B", "C")) ggplot(df, aes(x=group, fill=type)) + geom_bar() ในตัวอย่างข้างต้นฉันต้องการเห็น C พล็อตด้วยจำนวน 0 แต่มันขาดไปโดยสิ้นเชิง ... ขอบคุณสำหรับความช่วยเหลือใด ๆ Ulrik แก้ไข: นี่คือสิ่งที่ฉันต้องการ df &lt;- data.frame(type=c("A", "A", "A", "B", "B"), group=rep("group1", 5)) df1 &lt;- data.frame(type=c("A", "A", "A", "B", "B", …
100 r  ggplot2  legend  levels 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.