可以as_factor从forcats返回有序因子吗?虽然我没有看到它在GitHub 页面上报告为问题,但它似乎是一个缺失的功能。
我试过了:
y <- forcats::as_factor(c("a", "z", "g"), ordered = TRUE)
is.ordered(y)
# FALSE
Run Code Online (Sandbox Code Playgroud)
如果我不能,那么这样做是否有任何潜在危险:
y <- ordered(forcats::as_factor(c("a", "z", "g")))
Run Code Online (Sandbox Code Playgroud)
或者最好这样做:
y <- factor(c("a", "z", "g"), levels = unique(c("a", "z", "g")), ordered = TRUE))
Run Code Online (Sandbox Code Playgroud) 我如何自动在离散轴上每n个值中仅显示1个?
我可以像这样获得其他所有值:
library(ggplot2)
my_breaks <- function(x, n = 2) {
return(x[c(TRUE, rep(FALSE, n - 1))])
}
ggplot(mpg, aes(x = class, y = cyl)) +
geom_point() +
scale_x_discrete(breaks = my_breaks)
Run Code Online (Sandbox Code Playgroud)
但是我认为不可能将n参数指定为my_breaks,是吗?
这可能是另一种方式吗?我正在寻找一种适用于字符列和因子列的解决方案。