如何制作一个列/向量,根据另一个向量的身份按顺序对行进行排序电阻

问题描述

我有一个包含所有外显子和外显子所属基因的数据框。 当前的外显子名称并不表示它们的顺序。 我已经根据起始基因组位置对它们进行了排序, 所以现在我只需要生成一个列,根据基因给他们一个订单号。

数据框顶部的示例:

基因外显子

GENE1,"789",
GENE1,"953","102",
GENE2,"43024",
GENE3,"542","047",

所以这就是我希望我的数据框的样子:

GENE EXON 基因组顺序

GENE1,1

GENE1,2

GENE1,3

基因 2,1

GENE3,2

如何制作一个列,根据另一个向量的身份按顺序对行进行排序。

解决方法

您可以使用 ave

尝试以下代码
transform(df,Order = ave(1:nrow(df),GENE,FUN = seq_along))
,

data.table

library(data.table)
setDT(df)[,Order :=  rowid(GENE)]

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...