R &引用;其他";变成;不适用;
我有一个data.frame(DL),其中一个列名是fruit,它类似于c(“苹果”、“柠檬”、“橙色”、“其他”),因此我想更改此列的级别,以便图例的顺序(创建绘图时)将遵循我想要的顺序。这是我的密码R &引用;其他";变成;不适用;,r,levels,R,Levels,我有一个data.frame(DL),其中一个列名是fruit,它类似于c(“苹果”、“柠檬”、“橙色”、“其他”),因此我想更改此列的级别,以便图例的顺序(创建绘图时)将遵循我想要的顺序。这是我的密码 DL$fruit <- factor(DL$fruit, levels=c("lemon", "apple", "orange", "others")) DL$fruit如果数据不太干净,有时会发生这种情况——例如,如果输入值周围有额外的空格 下面是一个例子: fruit <-
DL$fruit <- factor(DL$fruit, levels=c("lemon", "apple", "orange", "others"))
DL$fruit如果数据不太干净,有时会发生这种情况——例如,如果输入值周围有额外的空格
下面是一个例子:
fruit <- c("apple", "lemon", "orange", "others", "others ") ## note the last two values
factor(fruit, levels=c("lemon", "apple", "orange", "others"))
# [1] apple lemon orange others <NA>
# Levels: lemon apple orange others
或者,grepl
也可以使用:
grepl("^\\s+|\\s+$", fruit)
# [1] FALSE FALSE FALSE FALSE TRUE
您的DL$fruit
列中是否有多余的空格?@AnandaMahto您是对的!当我从“他人”改为“他人”时,它起作用了。谢谢。@kelvinfrog,好的。我添加了它作为答案。我总是使用名称(表(var))
来检查隐藏的空白(特别是当它有时出现,但其他时候没有出现时)
print(fruit, quote = TRUE)
# [1] "apple" "lemon" "orange" "others" "others "
grepl("^\\s+|\\s+$", fruit)
# [1] FALSE FALSE FALSE FALSE TRUE