【发布时间】:2021-11-28 10:56:02
【问题描述】:
我有一个质谱测量数据集。因此,在这个小子集中,存在重复但强度不同的行或肽段。
a <- dput(test_Data)
structure(list(UNIPROT = structure(c(2L, 2L, 2L, 2L, 2L, 2L,
2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L), .Label = c("A8DUK4", "P08032", "P15508"), class = "factor"),
Intensity = c(16926.19, 36738.94, 2203.22, 5338.85, 133.44,
27991.35, 29505.84, 201.4695, 47469.09, 24841.01, 4546.9,
22805.69, 18494.71, 28805.99, 68220.65, 90526.29, 63259.19,
44492.48, 65497.13, 40704.81, 334874.1, 38702.87, 300135)), class = "data.frame", row.names = c(NA,
-23L))
数据框
UNIPROT Intensity
1 P08032 16926.1900
2 P08032 36738.9400
3 P08032 2203.2200
4 P08032 5338.8500
5 P08032 133.4400
6 P08032 27991.3500
7 P08032 29505.8400
8 P15508 201.4695
9 P15508 47469.0900
10 P15508 24841.0100
11 P15508 4546.9000
12 P15508 22805.6900
13 P15508 18494.7100
14 P15508 28805.9900
15 A8DUK4 68220.6500
16 A8DUK4 90526.2900
17 A8DUK4 63259.1900
18 A8DUK4 44492.4800
19 A8DUK4 65497.1300
20 A8DUK4 40704.8100
21 A8DUK4 334874.1000
22 A8DUK4 38702.8700
23 A8DUK4 300135.0000
所以我的目标
我必须从重复的行中只保留一个值,但在取出平均值之后。
如果是我的第一个肽,我不想考虑这一行
5 P08032 133.4400
我的想法是只取出那些高于某个阈值的行,如果超过阈值,然后取平均值并添加或生成一个新的数据框,其中只保留唯一的行及其平均值。
因此,每个都可以为这些单独的唯一行定义不同的阈值。
在我的小子集中,我有三个唯一的行。那么我是否可以设置三个不同的阈值,然后得到平均值。
任何建议或帮助将不胜感激
更新
虽然我从人们认为最大阈值的论文中读到。如果强度高于 5000,我可以服用,但我不确定其余肽是否低于 5000,我该如何考虑。
但现在我会接受这个 5000 的截止点。
【问题讨论】:
-
如果您在问题中包含阈值列表或有关如何计算阈值的一些信息,将会有所帮助。 (;
-
好的,让我补充一下。如果我以一种简单的方式思考,我会考虑每个元素中的最高值,但我想这将是有偏见的,或者我不确定!!