簡體   English   中英

兩個嵌套列中的r個因子級別

[英]r order factor levels in two nested columns

我有兩列嵌套的級別。 嵌套我的意思是第2列中的因子取決於第1列的值。我想按字母順序排列第1列中的因子級別。 我希望第2列中的因子級別按照第1列的字母順序按字母順序排列。

data<-as.data.frame(cbind(c("A","B","D","C","A","B","D","C","A","B","C","D"),
                      c("Alpha","Beta","Gamma","Delta","Zeta","Chi","Omega",
                                  "Delta","Alpha","Gamma","Beta","Zeta")))

data<-data[with(data, order(factor(levels(data$V1))), 
                                      factor(levels(data$V2))), ]

我嘗試按上述順序排列因子水平,但第二列在第一列之后沒有排序; 它只是按字母順序排列。 我知道我可以手動輸入我想要的等級,但我追求的是不需要的等級。

謝謝。

喜歡以下?

library(dplyr)
arrange(data, V1, V2)
   V1    V2
1   A Alpha
2   A Alpha
3   A  Zeta
4   B  Beta
5   B   Chi
6   B Gamma
7   C  Beta
8   C Delta
9   C Delta
10  D Gamma
11  D Omega
12  D  Zeta

data<-data[order(data$V1,data$V2), ] #應該工作

> data
   V1    V2
1   A Alpha
9   A Alpha
5   A  Zeta
2   B  Beta
6   B   Chi
10  B Gamma
11  C  Beta
4   C Delta
8   C Delta
3   D Gamma
7   D Omega
12  D  Zeta

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM