如何压缩具有共同X列值的行并且只保留一个Y列值?

问题描述 投票:0回答:1

我正在处理一个包含基因名称和 TPM 等变量的数据集。

基因 TPM
基因A 0.2
B基因 0.4
基因A 2.1

我想将任何出现不止一次的基因减少到一行,并且只报告该基因的最高 TPM,这样我的表格现在看起来像:

基因 TPM
基因A 2.1
B基因 0.4

我认为我的解决方案要么是过滤我现有的数据集,要么逐行循环遍历现有数据集以记录所有基因,并通过迭代将较低的 TPM 值替换为在 DF 中找到的较高值。

我正在努力使这些工作中的任何一个工作,并且不知道是否有另一种可能更好的解决方案。

非常感谢任何帮助。

r bioinformatics
1个回答
0
投票

根据提供的数据,您是否正在寻找这样的东西?

library(dplyr)

df %>%
  group_by(Gene) %>%
  summarise(TPM = max(TPM))

  gene    TPM
  <fct> <dbl>
1 A       2.1
2 B       0.4
© www.soinside.com 2019 - 2024. All rights reserved.