2016-10-11 65 views
0

我有一个data.frame,显示如下:如何在R语言中以我特定的“向量”顺序排序data.frame?

enter image description here

为了分析这些10的功能和障碍倾向的关系,我需要在data.frame在我的氨基酸排序顺序是存储在这样的向量中c("L", "I", "V", "Y", "C", "F", "R", "W", "M", "H", "N", "T", "G", "D", "Q", "A", "K", "S", "P", "E")

我试过这个properties[aa == c("L", "I", "V", "Y", "C", "F", "R", "W", "M", "H", "N", "T", "G", "D", "Q", "A", "K", "S", "P", "E"), ]这似乎并不适合我。

按照我的'向量'顺序排序data.frame的正确方法是什么?

回答

0

你可以让你列aa的一个因素,并给予正确的顺序因子水平。然后可以根据等级对因素进行排序。看看这个例子:

my_order <- c("X", "Y", "Z", "A", "B") # defines the order 

test <- c("A", "B", "Y", "Z", "Z", "A", "X", "X", "B") # a normal character vector 

test2 <- factor(test, levels = my_order) # convert it to factor and specify the levels 

test2 # original order unchanged 

test2[order(test2)] # ordered by custom order 

请注意,您必须指定所有发生因素级别,否则这将不起作用!