有谁能帮我写R脚本,给我两个表达最好的基因?
我想在这样的数据集中找到前两个表达的异构体:有谁能帮我写R脚本,给我两个表达最好的基因?,r,R,我想在这样的数据集中找到前两个表达的异构体: ID position count Gene1, 1300, 200 Gene1, 1400, 54 Gene1, 4500, 178 Gene1, 230, 450 Gene2, 4580, 80 Gene2, 549, 740 Gene2, 84, 199
ID position count
Gene1, 1300, 200
Gene1, 1400, 54
Gene1, 4500, 178
Gene1, 230, 450
Gene2, 4580, 80
Gene2, 549, 740
Gene2, 84, 199
ID, position1, p1-count, position2, p2-count
Gene1, 230, 450, 1300, 200
Gene2, 84, 199, 549, 740
结果应该如下所示:
ID position count
Gene1, 1300, 200
Gene1, 1400, 54
Gene1, 4500, 178
Gene1, 230, 450
Gene2, 4580, 80
Gene2, 549, 740
Gene2, 84, 199
ID, position1, p1-count, position2, p2-count
Gene1, 230, 450, 1300, 200
Gene2, 84, 199, 549, 740
谢谢你的帮助。我也在研究生物数据。所以我知道你想要什么
d1 <- read.table(text="ID position count
Gene1 1300 200
Gene1 1400 54
Gene1 4500 178
Gene1 230 450
Gene2 4580 80
Gene2 549 740
Gene2 84 199", head=T, as.is=T)
library(dplyr)
d2 <- d1 %>% group_by(ID) %>% arrange(desc(count)) %>%
do(head(., 2)) %>% group_by(ID)\
d2
# Source: local data frame [4 x 3]
# Groups: ID [2]
# ID position count
# (chr) (int) (int)
# 1 Gene1 230 450
# 2 Gene1 1300 200
# 3 Gene2 549 740
# 4 Gene2 84 199
这是否意味着您正在寻找每个
ID
的前两名count
?我们并不都是生物学家。你能解释一下你是如何得出这个结果的吗?这只是位置的两个最低值吗?对不起,没有明确的解释。程序必须检查每个ID的计数,选择前2个计数,然后打印ID,位置对应最高计数,最高计数,位置对应第二高计数和第二高计数。非常感谢文耀!