Error in .mergeAnnotation(input, annotation) : ** Please check the annotation file. The channel name must be matched with that in input data.

443 views
Skip to first unread message

Tobias Kockmann

unread,
Jul 1, 2021, 7:04:03 AM7/1/21
to MSstats
Hi MSstatsTMT dev team,

I get the following error:

> input.pd <- MSstatsTMT::PDtoMSstatsTMTFormat(input = raw.pd, annotation = annotation.pd, verbose = TRUE)
INFO  [2021-06-30 17:03:52] ** Raw data from ProteomeDiscoverer imported successfully.
INFO  [2021-06-30 17:03:55] ** Raw data from ProteomeDiscoverer cleaned successfully.
INFO  [2021-06-30 17:03:55] ** Using provided annotation.
INFO  [2021-06-30 17:03:55] ** Run and Channel labels were standardized to remove symbols such as '.' or '%'.
INFO  [2021-06-30 17:03:55] ** The following options are used:
  - Features will be defined by the columns: PeptideSequence, PrecursorCharge
  - Shared peptides will be removed.
  - Proteins with single feature will not be removed.
  - Features with less than 3 measurements within each run will be removed.
INFO  [2021-06-30 17:03:55] ** Features with all missing measurements across channels within each run are removed.
INFO  [2021-06-30 17:03:55] ** Shared peptides are removed.
INFO  [2021-06-30 17:03:55] ** Features with one or two measurements across channels within each run are removed.
INFO  [2021-06-30 17:03:55] ** PSMs have been aggregated to peptide ions.
Error in .mergeAnnotation(input, annotation) : 
  ** Please check the annotation file. The channel name must be matched with that in input data.

But as far as I can judge they are matched:

> str(raw.pd)
'data.frame': 79949 obs. of  42 variables:
 $ PSMs.Workflow.ID                 : int  -130 -130 -130 -130 -130 -130 -130 -130 -130 -130 ...
 $ PSMs.Peptide.ID                  : int  190 2468088 4196087 4195766 4195756 4195603 2468222 4195485 4195296 2468382 ...
 $ Checked                          : chr  "False" "False" "False" "False" ...
 $ Confidence                       : chr  "High" "High" "High" "High" ...
 $ Identifying.Node                 : chr  "Sequest HT (A2)" "Sequest HT (A2)" "Sequest HT (A2)" "Sequest HT (A2)" ...
 $ PSM.Ambiguity                    : chr  "Unambiguous" "Unambiguous" "Unambiguous" "Unambiguous" ...
 $ Annotated.Sequence               : chr  "[M].sSGAHGEEGSAR.[M]" "[R].LQAGEETASHYR.[M]" "[R].EmEENFALEAANYQDTIGR.[L]" "[R].LLLNNDNLLR.[E]" ...
 $ Modifications                    : chr  "N-Term(TMT6plex)" "" "M2(Oxidation)" "" ...
 $ Number.of.Proteins               : int  2 1 2 6 1 4 3 1 2 2 ...
 $ Master.Protein.Accessions        : chr  "P43024" "Q9Z0E0" "P20152" "A0A0N4SVM0" ...
 $ Protein.Accessions               : chr  "P43024; Q9DCW5" "Q9Z0E0" "A0A0A6YWC8; P20152" "P47753; Q5RKN9; A0A0N4SVM0; P47754; D6RCW7; A0A0G2JE27" ...
 $ Number.of.Missed.Cleavages       : int  0 0 0 0 0 0 0 0 0 0 ...
 $ Charge                           : int  3 3 2 2 2 2 2 3 2 3 ...
 $ Delta.Score                      : num  0.708 0.609 0.815 0.468 0.67 ...
 $ Delta.Cn                         : num  0 0 0 0 0 0 0 0 0 0 ...
 $ Rank                             : int  1 1 1 1 1 1 1 1 1 1 ...
 $ Search.Engine.Rank               : int  1 1 1 1 1 1 1 1 1 1 ...
 $ mz.in.Da                         : num  459 455 1109 599 611 ...
 $ MHplus.in.Da                     : num  1374 1362 2217 1198 1222 ...
 $ Theo.MHplus.in.Da                : num  1374 1362 2217 1198 1222 ...
 $ Delta.M.in.ppm                   : num  1.59 -0.3 0.84 0.2 0.21 0.09 -0.23 -0.16 0.37 0.73 ...
 $ Delta.mz.in.Da                   : num  0.00073 -0.00013 0.00093 0.00012 0.00013 0.00005 -0.00011 -0.0001 0.00025 0.0007 ...
 $ Activation.Type                  : chr  "HCD" "HCD" "HCD" "HCD" ...
 $ MS.Order                         : chr  "MS2" "MS2" "MS2" "MS2" ...
 $ Isolation.Interference.in.Percent: num  1.9 19.2 0 11.2 18.3 ...
 $ Average.Reporter.SN              : num  128.4 33 NA 3.3 1.6 ...
 $ Ion.Inject.Time.in.ms            : num  97.1 105 105 105 105 ...
 $ RT.in.min                        : num  13.9 26.1 75.3 75.2 75.2 ...
 $ First.Scan                       : int  2136 6737 27027 26968 26967 26923 6757 26903 26849 6783 ...
 $ Spectrum.File                    : chr  "20200703_005_S219785_TMT-TAILS6plex_set1_post_1.raw" "20200703_027_S219787_TMT-TAILS6plex_set3_pre_2.raw" "20200703_031_S219788_TMT-TAILS6plex_set4_pre_3.raw" "20200703_031_S219788_TMT-TAILS6plex_set4_pre_3.raw" ...
 $ File.ID                          : chr  "F1.4" "F2.2" "F3.3" "F3.3" ...
 $ Abundance.126                    : num  104.8 23.9 NA 2.5 2.7 ...
 $ Abundance.127                    : num  129.1 33.4 NA NA NA ...
 $ Abundance.128                    : num  116 22.7 NA 3.4 NA 8.8 23.9 34.2 9.6 27.1 ...
 $ Abundance.129                    : num  154.2 37 NA 5.9 NA ...
 $ Abundance.130                    : num  109.9 26.4 NA 5 2.5 ...
 $ Abundance.131                    : num  156.4 54.3 NA 2.8 4.5 ...
 $ Quan.Info                        : chr  "" "NoQuanLabels" "NoQuanLabels" "NoQuanLabels" ...
 $ XCorr                            : num  4.04 2.84 4.6 1.86 1.88 1.68 2.35 3.39 1.33 3.68 ...
 $ Number.of.Protein.Groups         : int  1 1 1 1 1 1 1 1 1 1 ...
 $ Percolator.q.Value               : num  2.12e-05 2.12e-05 2.12e-05 2.12e-05 2.12e-05 ...
 $ Percolator.PEP                   : num  1.04e-08 5.56e-04 5.25e-09 3.90e-05 6.26e-04 ...
> 

> sessionInfo()
R version 4.1.0 (2021-05-18)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows Server 2012 R2 x64 (build 9600)

Matrix products: default

locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252   
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] dplyr_1.0.6      tidyr_1.1.3      MSstatsTMT_2.0.1

loaded via a namespace (and not attached):
 [1] MSstats_4.0.1         gtools_3.8.2          tidyselect_1.1.1      purrr_0.3.4          
 [5] splines_4.1.0         lmerTest_3.1-3        lattice_0.20-44       log4r_0.3.2          
 [9] colorspace_2.0-2      vctrs_0.3.8           generics_0.1.0        utf8_1.2.1           
[13] survival_3.2-11       marray_1.70.0         rlang_0.4.11          nloptr_1.2.2.2       
[17] pillar_1.6.1          glue_1.4.2            DBI_1.1.1             lifecycle_1.0.0      
[21] munsell_0.5.0         gtable_0.3.0          caTools_1.18.2        fansi_0.5.0          
[25] preprocessCore_1.54.0 Rcpp_1.0.6            KernSmooth_2.23-20    scales_1.1.1         
[29] backports_1.2.1       checkmate_2.0.0       limma_3.48.1          lme4_1.1-27.1        
[33] gplots_3.1.1          ggplot2_3.3.3         stringi_1.6.2         ggrepel_0.9.1        
[37] numDeriv_2016.8-1.1   grid_4.1.0            MSstatsConvert_1.2.2  cli_2.5.0            
[41] tools_4.1.0           bitops_1.0-7          magrittr_2.0.1        tibble_3.1.2         
[45] crayon_1.4.1          pkgconfig_2.0.3       MASS_7.3-54           ellipsis_0.3.2       
[49] Matrix_1.3-3          data.table_1.14.0     assertthat_0.2.1      minqa_1.2.4          
[53] rstudioapi_0.13       R6_2.5.0              boot_1.3-28           nlme_3.1-152         
[57] compiler_4.1.0

Is there a problem in the matching code?

Mateusz Staniak

unread,
Jul 1, 2021, 7:21:05 AM7/1/21
to MSstats
Hi,


can you provide a small sample of quant data and the annotation file? What are the channels in your annotation?



Kind regards
Mateusz

Tobias Kockmann

unread,
Jul 1, 2021, 7:56:55 AM7/1/21
to MSstats
> head(raw.pd)
  PSMs.Workflow.ID PSMs.Peptide.ID Checked Confidence Identifying.Node PSM.Ambiguity          Annotated.Sequence
1             -130             190   False       High  Sequest HT (A2)   Unambiguous        [M].sSGAHGEEGSAR.[M]
2             -130         2468088   False       High  Sequest HT (A2)   Unambiguous        [R].LQAGEETASHYR.[M]
3             -130         4196087   False       High  Sequest HT (A2)   Unambiguous [R].EmEENFALEAANYQDTIGR.[L]
4             -130         4195766   False       High  Sequest HT (A2)   Unambiguous          [R].LLLNNDNLLR.[E]
5             -130         4195756   False       High  Sequest HT (A2)   Unambiguous        [R].ILDLGITGPEGH.[V]
6             -130         4195603   False       High  Sequest HT (A2)   Unambiguous            [R].FDFPDELR.[P]
     Modifications Number.of.Proteins Master.Protein.Accessions                                     Protein.Accessions
1 N-Term(TMT6plex)                  2                    P43024                                         P43024; Q9DCW5
2                                   1                    Q9Z0E0                                                 Q9Z0E0
3    M2(Oxidation)                  2                    P20152                                     A0A0A6YWC8; P20152
4                                   6                A0A0N4SVM0 P47753; Q5RKN9; A0A0N4SVM0; P47754; D6RCW7; A0A0G2JE27
5                                   1                    O08553                                                 O08553
6                                   4                    P20917                 P20917; A0A087WPP5; Q3ZB60; A0A087WRD6
  Number.of.Missed.Cleavages Charge Delta.Score Delta.Cn Rank Search.Engine.Rank  mz.in.Da MHplus.in.Da
1                          0      3      0.7079        0    1                  1  458.5591     1373.663
2                          0      3      0.6092        0    1                  1  454.5529     1361.644
3                          0      2      0.8152        0    1                  1 1108.9928     2216.978
4                          0      2      0.4677        0    1                  1  599.3513     1197.695
5                          0      2      0.6702        0    1                  1  611.3274     1221.648
6                          0      2      0.3274        0    1                  1  519.7482     1038.489
  Theo.MHplus.in.Da Delta.M.in.ppm Delta.mz.in.Da Activation.Type MS.Order Isolation.Interference.in.Percent
1          1373.661           1.59        0.00073             HCD      MS2                          1.901614
2          1361.644          -0.30       -0.00013             HCD      MS2                         19.211230
3          2216.976           0.84        0.00093             HCD      MS2                          0.000000
4          1197.695           0.20        0.00012             HCD      MS2                         11.185880
5          1221.647           0.21        0.00013             HCD      MS2                         18.319190
6          1038.489           0.09        0.00005             HCD      MS2                         21.923960
  Average.Reporter.SN Ion.Inject.Time.in.ms RT.in.min First.Scan                                       Spectrum.File
1               128.4                97.088   13.9462       2136 20200703_005_S219785_TMT-TAILS6plex_set1_post_1.raw
2                33.0               105.000   26.1383       6737  20200703_027_S219787_TMT-TAILS6plex_set3_pre_2.raw
3                  NA               105.000   75.3362      27027  20200703_031_S219788_TMT-TAILS6plex_set4_pre_3.raw
4                 3.3               105.000   75.2028      26968  20200703_031_S219788_TMT-TAILS6plex_set4_pre_3.raw
5                 1.6               105.000   75.1984      26967  20200703_031_S219788_TMT-TAILS6plex_set4_pre_3.raw
6                 6.6               105.000   75.0978      26923  20200703_031_S219788_TMT-TAILS6plex_set4_pre_3.raw
  File.ID Abundance.126 Abundance.127 Abundance.128 Abundance.129 Abundance.130 Abundance.131    Quan.Info XCorr
1    F1.4         104.8         129.1         116.0         154.2         109.9         156.4               4.04
2    F2.2          23.9          33.4          22.7          37.0          26.4          54.3 NoQuanLabels  2.84
3    F3.3            NA            NA            NA            NA            NA            NA NoQuanLabels  4.60
4    F3.3           2.5            NA           3.4           5.9           5.0           2.8 NoQuanLabels  1.86
5    F3.3           2.7            NA            NA            NA           2.5           4.5 NoQuanLabels  1.88
6    F3.3           6.7           4.0           8.8           9.0           5.0           5.8 NoQuanLabels  1.68
  Number.of.Protein.Groups Percolator.q.Value Percolator.PEP
1                        1          2.117e-05      1.045e-08
2                        1          2.117e-05      5.561e-04
3                        1          2.117e-05      5.251e-09
4                        1          2.117e-05      3.899e-05
5                        1          2.117e-05      6.265e-04
6                        1          2.117e-05      1.116e-03

> head(annotation.pd)
                                                  Run Fraction TechRepMixture Channel time genotype Mixture
1 20200703_005_S219785_TMT-TAILS6plex_set1_post_1.raw     post              1     126   8w       ko    set1
2 20200703_005_S219785_TMT-TAILS6plex_set1_post_1.raw     post              1     127   7d       ko    set1
3 20200703_005_S219785_TMT-TAILS6plex_set1_post_1.raw     post              1     128   8w       wt    set1
4 20200703_005_S219785_TMT-TAILS6plex_set1_post_1.raw     post              1     129   Nv       ko    set1
5 20200703_005_S219785_TMT-TAILS6plex_set1_post_1.raw     post              1     130   7d       wt    set1
6 20200703_005_S219785_TMT-TAILS6plex_set1_post_1.raw     post              1     131   Nv       wt    set1
  BioReplicate Condition
1   TLR4_8w_10     8w_ko
2   TLR4_7d_14     7d_ko
3     WT_8w_14     8w_wt
4   TLR4_Nv_13     Nv_ko
5      WT_7d_4     7d_wt
6      WT_Nv_4     Nv_wt

Mateusz Staniak

unread,
Jul 1, 2021, 8:04:11 AM7/1/21
to MSstats
Hi,



csv files or RDS/rda/Rdata files would be much easier to use. Thanks in advance
One protein + annotation should be enough as long as it reproduces the error



Kind regards
Mateusz

Tobias Kockmann

unread,
Jul 1, 2021, 8:23:21 AM7/1/21
to MSstats

single protein subset attached
MSstatsTMT_PDtoMSstatsTMTFormat_error.Rdata

Mateusz Staniak

unread,
Jul 1, 2021, 8:42:29 AM7/1/21
to MSstats
Hi,


I got the same error on this test dataset.
The protein you sent me is actually a protein group. The useNumProteinsColumn parameter controls what PD converter does with protein groups. Please try setting this parameter to FALSE or using different column as protein ID. Can't tell if this will fix the problem for full dataset. Please let me know if the error persists.



Kind regards
Mateusz

Tobias Kockmann

unread,
Jul 1, 2021, 9:08:38 AM7/1/21
to MSstats
all of these commands give the same error:

input.pd <- MSstatsTMT::PDtoMSstatsTMTFormat(input = raw.pd, annotation = annotation.pd)
input.pd <- MSstatsTMT::PDtoMSstatsTMTFormat(input = raw.pd, annotation = annotation.pd, useNumProteinsColumn = FALSE)
input.pd <- MSstatsTMT::PDtoMSstatsTMTFormat(input = raw.pd, annotation = annotation.pd, useNumProteinsColumn = FALSE, which.proteinid = "Master.Protein.Accessions")
input.pd <- MSstatsTMT::PDtoMSstatsTMTFormat(input = raw.pd, annotation = annotation.pd, which.proteinid = "Master.Protein.Accessions")


Mateusz Staniak

unread,
Jul 1, 2021, 9:10:40 AM7/1/21
to MSstats
Thanks for checking, then please send me a different subset of data that will produce the error with
input.pd <- MSstatsTMT::PDtoMSstatsTMTFormat(input = raw.pd, annotation = annotation.pd, useNumProteinsColumn = FALSE)
input.pd <- MSstatsTMT::PDtoMSstatsTMTFormat(input = raw.pd, annotation = annotation.pd, useNumProteinsColumn = FALSE, which.proteinid = "Master.Protein.Accessions")
calls

Tobias Kockmann

unread,
Jul 1, 2021, 9:10:49 AM7/1/21
to MSstats
How is your code matching the Abundance column in the PSM report with the annotation file?

Mateusz Staniak

unread,
Jul 1, 2021, 9:15:08 AM7/1/21
to MSstats
That shouldn't be a problem - it matched correctly for the protein you sent me when the protein group was not removed. Before, the error was caused by the fact that all the data were filtered out, so unique(input$Channel) was empty, and unique(annotation$Channel) was not. This is why I need to see some more data to see the error not confounded with a different problem


To answer your question, columns are converted: Abundance.130 -> Abundance130, melted to a Channel column Abundance130 -> 130 and then merged with the annotation.

Mateusz Staniak

unread,
Jul 1, 2021, 9:33:40 AM7/1/21
to MSstats
When I look at your post here, I only see channels 126, 127, 128, 129, 130, 131. But when I load your data, there are columns "Abundance..126" "Abundance..127N" [36] "Abundance..127C" "Abundance..128N" "Abundance..128C" "Abundance..129N" "Abundance..129C" [41] "Abundance..130N" "Abundance..130C" "Abundance..131"
are we looking at the same dataset? raw.pd you sent me might be the example dataset from MSstatsTMT package

Tobias Kockmann

unread,
Jul 1, 2021, 10:20:37 AM7/1/21
to MSstats
Daaammm, my mistake. I used the same object names as for the example data and cleaned the workspace at some point in the IDE. Stupid me! Now useNumProteinsColumn = FALSE does the job as you predicted:

> input.pd <- MSstatsTMT::PDtoMSstatsTMTFormat(input = raw.pd, annotation = annotation.pd, useNumProteinsColumn = FALSE)
INFO  [2021-07-01 16:09:49] ** Raw data from ProteomeDiscoverer imported successfully.
INFO  [2021-07-01 16:09:53] ** Raw data from ProteomeDiscoverer cleaned successfully.
INFO  [2021-07-01 16:09:53] ** Using provided annotation.
INFO  [2021-07-01 16:09:53] ** Run and Channel labels were standardized to remove symbols such as '.' or '%'.
INFO  [2021-07-01 16:09:53] ** The following options are used:

  - Features will be defined by the columns: PeptideSequence, PrecursorCharge
- Shared peptides will be removed.
- Proteins with single feature will not be removed.
- Features with less than 3 measurements within each run will be removed.
INFO  [2021-07-01 16:09:53] ** Features with all missing measurements across channels within each run are removed.
INFO  [2021-07-01 16:09:54] ** Shared peptides are removed.
INFO  [2021-07-01 16:09:54] ** Features with one or two measurements across channels within each run are removed.
INFO  [2021-07-01 16:12:15] ** PSMs have been aggregated to peptide ions.
INFO  [2021-07-01 16:12:18] ** Run annotation merged with quantification data.
INFO  [2021-07-01 16:12:20] ** For peptides overlapped between fractions of set3_2 use the fraction with maximal average abundance.
INFO  [2021-07-01 16:12:20] ** For peptides overlapped between fractions of set4_3 use the fraction with maximal average abundance.
INFO  [2021-07-01 16:12:21] ** For peptides overlapped between fractions of set2_1 use the fraction with maximal average abundance.
INFO  [2021-07-01 16:12:22] ** For peptides overlapped between fractions of set3_1 use the fraction with maximal average abundance.
INFO  [2021-07-01 16:12:22] ** For peptides overlapped between fractions of set4_2 use the fraction with maximal average abundance.
INFO  [2021-07-01 16:12:23] ** For peptides overlapped between fractions of set3_3 use the fraction with maximal average abundance.
INFO  [2021-07-01 16:12:24] ** For peptides overlapped between fractions of set2_2 use the fraction with maximal average abundance.
INFO  [2021-07-01 16:12:24] ** For peptides overlapped between fractions of set4_1 use the fraction with maximal average abundance.
INFO  [2021-07-01 16:12:25] ** For peptides overlapped between fractions of set1_1 use the fraction with maximal average abundance.
INFO  [2021-07-01 16:12:26] ** For peptides overlapped between fractions of set1_2 use the fraction with maximal average abundance.
INFO  [2021-07-01 16:12:27] ** For peptides overlapped between fractions of set2_3 use the fraction with maximal average abundance.
INFO  [2021-07-01 16:12:28] ** For peptides overlapped between fractions of set1_3 use the fraction with maximal average abundance.
INFO  [2021-07-01 16:12:28] ** Fractions belonging to same mixture have been combined.
INFO  [2021-07-01 16:12:28] ** Features with one or two measurements across channels within each run are removed.
INFO  [2021-07-01 16:12:28] ** Fractionation handled.
INFO  [2021-07-01 16:12:29] ** Updated quantification data to make balanced design. Missing values are marked by NA
INFO  [2021-07-01 16:12:29] ** Finished preprocessing. The dataset is ready to be processed by the proteinSummarization function.

Mateusz Staniak

unread,
Jul 1, 2021, 6:21:03 PM7/1/21
to MSstats
Hi,
glad to hear it works! Now it should work with both useNumProteinsColumn = FALSE and useNumProteinsColumn = TRUE
Best,
Mateusz

Tobias Kockmann

unread,
Jul 2, 2021, 3:08:22 AM7/2/21
to MSstats
unfortunately not:

> input.pd.master <- MSstatsTMT::PDtoMSstatsTMTFormat(input = raw.pd, annotation = annotation.pd, useNumProteinsColumn = FALSE, which.proteinid = "Master.Protein.Accessions")
INFO  [2021-07-02 08:58:27] ** Raw data from ProteomeDiscoverer imported successfully.
INFO  [2021-07-02 08:58:31] ** Raw data from ProteomeDiscoverer cleaned successfully.
INFO  [2021-07-02 08:58:31] ** Using provided annotation.
INFO  [2021-07-02 08:58:31] ** Run and Channel labels were standardized to remove symbols such as '.' or '%'.
INFO  [2021-07-02 08:58:31] ** The following options are used:

  - Features will be defined by the columns: PeptideSequence, PrecursorCharge
  - Shared peptides will be removed.
  - Proteins with single feature will not be removed.
  - Features with less than 3 measurements within each run will be removed.
INFO  [2021-07-02 08:58:32] ** Features with all missing measurements across channels within each run are removed.
INFO  [2021-07-02 08:58:33] ** Shared peptides are removed.
INFO  [2021-07-02 08:58:33] ** Features with one or two measurements across channels within each run are removed.
INFO  [2021-07-02 09:00:56] ** PSMs have been aggregated to peptide ions.
INFO  [2021-07-02 09:00:59] ** Run annotation merged with quantification data.
INFO  [2021-07-02 09:01:01] ** For peptides overlapped between fractions of set3_2 use the fraction with maximal average abundance.
INFO  [2021-07-02 09:01:01] ** For peptides overlapped between fractions of set4_3 use the fraction with maximal average abundance.
INFO  [2021-07-02 09:01:02] ** For peptides overlapped between fractions of set2_1 use the fraction with maximal average abundance.
INFO  [2021-07-02 09:01:03] ** For peptides overlapped between fractions of set3_1 use the fraction with maximal average abundance.
INFO  [2021-07-02 09:01:03] ** For peptides overlapped between fractions of set4_2 use the fraction with maximal average abundance.
INFO  [2021-07-02 09:01:04] ** For peptides overlapped between fractions of set3_3 use the fraction with maximal average abundance.
INFO  [2021-07-02 09:01:04] ** For peptides overlapped between fractions of set2_2 use the fraction with maximal average abundance.
INFO  [2021-07-02 09:01:05] ** For peptides overlapped between fractions of set4_1 use the fraction with maximal average abundance.
INFO  [2021-07-02 09:01:06] ** For peptides overlapped between fractions of set1_1 use the fraction with maximal average abundance.
INFO  [2021-07-02 09:01:06] ** For peptides overlapped between fractions of set1_2 use the fraction with maximal average abundance.
INFO  [2021-07-02 09:01:07] ** For peptides overlapped between fractions of set2_3 use the fraction with maximal average abundance.
INFO  [2021-07-02 09:01:07] ** For peptides overlapped between fractions of set1_3 use the fraction with maximal average abundance.
INFO  [2021-07-02 09:01:08] ** Fractions belonging to same mixture have been combined.
INFO  [2021-07-02 09:01:08] ** Features with one or two measurements across channels within each run are removed.
INFO  [2021-07-02 09:01:08] ** Fractionation handled.
INFO  [2021-07-02 09:01:09] ** Updated quantification data to make balanced design. Missing values are marked by NA
INFO  [2021-07-02 09:01:10] ** Finished preprocessing. The dataset is ready to be processed by the proteinSummarization function.
> ?PDtoMSstatsTMTFormat
> input.pd.master.noSharedPeptides <- MSstatsTMT::PDtoMSstatsTMTFormat(input = raw.pd, annotation = annotation.pd, useNumProteinsColumn = TRUE, which.proteinid = "Master.Protein.Accessions")
INFO  [2021-07-02 09:05:16] ** Raw data from ProteomeDiscoverer imported successfully.
INFO  [2021-07-02 09:05:20] ** Raw data from ProteomeDiscoverer cleaned successfully.
INFO  [2021-07-02 09:05:20] ** Using provided annotation.
INFO  [2021-07-02 09:05:20] ** Run and Channel labels were standardized to remove symbols such as '.' or '%'.
INFO  [2021-07-02 09:05:20] ** The following options are used:

  - Features will be defined by the columns: PeptideSequence, PrecursorCharge
  - Shared peptides will be removed.
  - Proteins with single feature will not be removed.
  - Features with less than 3 measurements within each run will be removed.
INFO  [2021-07-02 09:05:20] ** Features with all missing measurements across channels within each run are removed.
INFO  [2021-07-02 09:05:20] ** Shared peptides are removed.
INFO  [2021-07-02 09:05:20] ** Features with one or two measurements across channels within each run are removed.
INFO  [2021-07-02 09:05:20] ** PSMs have been aggregated to peptide ions.

Error in .mergeAnnotation(input, annotation) :
  ** Please check the annotation file. The channel name must be matched with that in input data.

Mateusz Staniak

unread,
Jul 2, 2021, 5:18:23 AM7/2/21
to MSstats
Hi,
thanks for letting me know,
it looks like in this case every protein is either a group or filtered out based on other criteria, that's interesting,
we will need to describe the useNumProteinsColumn parameter in the documentation better
Best,
Mateusz

Tobias Kockmann

unread,
Jul 2, 2021, 5:36:06 AM7/2/21
to MSstats

Since you mention the documentation. I am not sure what to make of:

useNumProteinsColumn   
logical, TURE(default) remove shared peptides by information of # Proteins column in PSM sheet.

useUniquePeptide   
logical, if TRUE (default) removes peptides that are assigned for more than one proteins. We assume to use unique peptide for each protein.

It kind of sounds like both parameters are doing the same thing. Setting useNumProteinsColumn = TRUE will remove all peptides with Number.of.Proteins > 1 ??? How is uniqueness judged? Where is the difference between being unique and being assigned to a signle protein/protein group???

Mateusz Staniak

unread,
Jul 2, 2021, 6:04:09 AM7/2/21
to MSstats
Hi,
this is PD-specific. In most converters, we remove shared peptides simply by counting proteins per peptide (unique = count == 1) - that' what the useUniquePeptide parameter does. In PD, there is additional information in the column with protein counts. This way, user can remove peptides that belong to more than one protein according to PD counts (in this case, these proteins are in a single protein group). This second meaning is not used in any other converter.
Best,
Mateusz
Reply all
Reply to author
Forward
0 new messages