重新排序表1中R的因子水平

qjp7pelc  于 2023-03-10  发布在  其他
关注(0)|答案(1)|浏览(140)

我使用table 1项目在R中整理了一个描述性统计表,注意到不管我如何对因子变量排序,table 1函数默认按字母顺序对这些因子水平排序,例如,它按“10 k-20 k,20 k-30 k,etc...,小于20 k”,因为L是按字母顺序排在数字后面的。我希望“小于20 k”变量是收入的第一行。还有其他情况下,这个表中的变量是有序的,因此字母顺序可能会打乱我想看到的显示顺序。有人知道如何解决这个问题吗?
我尝试重新排序tidyverse中的因子,但table 1似乎默认按字母顺序排序因子水平

to94eoyn

to94eoyn1#

factor()中使用levels=参数:

set.seed(42)
lbl <- c("Strongly Disagree", "Disagree", "No Opinion", "Agree", "Strongly Agree")
dta <- sample(lbl, 25, replace=TRUE)
dta.f1 <- factor(dta)
table(dta.f1)
# dta.f1
#             Agree          Disagree        No Opinion    Strongly Agree Strongly Disagree 
#                 5                 6                 2                 5                 7 
dta.f2 <- factor(dta, levels=lbl)
table(dta.f2)
# dta.f2
# Strongly Disagree          Disagree        No Opinion             Agree    Strongly Agree 
#                 7                 6                 2                 5                 5

相关问题