【发布时间】:2015-08-03 17:19:01
【问题描述】:
我有一个包含如下基因表达数据的数据框:
row.names symbol Sample1 Sample2 Sample3 Sample4
Probe1 Gene1 1.5 2.8 1.8 3.2
Probe2 Gene2 2.7 4.5 3.2 5.1
Probe3 Gene3 1.1 4.7 2.3 5.3
Probe4 Gene2 1.2 0.9 0.8 1.1
Probe5 Gene1 3.1 6.1 6.2 4.2
我想对数据进行子集化,以便只保留独特的基因,并且在每种情况下都将保留具有最高中位数的探针,即上面的数据将变为以下内容:
row.names symbol Sample1 Sample2 Sample3 Sample4
Probe2 Gene2 2.7 4.5 3.2 5.1
Probe3 Gene3 1.1 4.7 2.3 5.3
Probe5 Gene1 3.1 6.1 6.2 4.2
数据框有约 40,000 个单独的探针和约 100 个样本。
有人知道 R 中哪些命令适合该任务吗?
【问题讨论】:
-
你应该在你的问题中添加一个可重复的例子。
-
@MikeRSpencer 你是什么意思?
-
我喜欢看到生成的虚拟数据来帮助提问者(和其他人)完成答案,所以在这种情况下类似于:df = data.frame(symbol=rep(c("Gene1" , "Gene2", "Gene3"), each=3), Sample1=rnorm(9), etc.) 它保存了那些回答问题的人。
标签: r