Contents

Package: Pbase
Authors: Laurent Gatto and Sebastian Gibb
Last compiled: Mon Oct 30 19:59:06 2017
Last modified: 2017-10-30 17:27:57

0.1 Introduction

This vignette briefly introduces the central data object of the Pbase package, namely Proteins instances, as depicted below. They contain a set of protein sequences (10 in the figure below), composed of the protein sequences (grey boxes) and annotation data (table on the left). Each protein links to a set of ranges of interest, such as protein domains of experimentally observed peptides (also in grey) that are also decorated with their own annotation data. The figure also show the accessors for the different data slots, that are detailed in ?Proteins.

Proteins objects are populated by protein sequences stemming from a fasta file and the peptides typically originate from an LC-MSMS experiment.

The original data used below is a 10 fmol Peptide Retention Time Calibration Mixture spiked into 50 ng HeLa background acquired on a Thermo Orbitrap Q Exactive instrument. A restricted set of high scoring human proteins from the UniProt release 2015_02 were searched using the MSGF+ search engine.

0.2 The fasta database

library("Biostrings")
## Loading required package: XVector
## 
## Attaching package: 'Biostrings'
## The following object is masked from 'package:base':
## 
##     strsplit
fafile <- system.file("extdata/HUMAN_2015_02_selected.fasta",
                      package = "Pbase")
fa <- readAAStringSet(fafile)
fa
##   A AAStringSet instance of length 9
##     width seq                                            names               
## [1]  2602 MPVTEKDLAEDAPWKKIQQNTF...VLAVKWGEEHIPGSPFHVTVP sp|O75369|FLNB_HU...
## [2]  3374 MSPESGHSRIFEATAGPNKPES...YTLSKDSLSNGVPSGRQAEFS sp|A4UGR9|XIRP2_H...
## [3]  2624 MFRRARLSVKPNVRPGVGARGS...EATTVSEYFFNDIFIEVDETE sp|A6H8Y1|BDP1_HU...
## [4]   911 MVDYHAANQSYQYGPSSAGNGA...AVPGALDYKSFSTALYGESDL sp|O43707|ACTN4_H...
## [5]   417 MSLSNKLTLDKLDVKGKRVVMR...GASLELLEGKVLPGVDALSNI sp|P00558|PGK1_HU...
## [6]   375 MDDDIAALVVDNGSGMCKAGFA...MWISKQEYDESGPSIVHRKCF sp|P60709|ACTB_HU...
## [7]   664 METPSQRRATRSGAQASSTPLS...RSYLLGNSSPRTQSPQNCSIM sp|P02545|LMNA_HU...
## [8]   364 MPYQYPALTPEQKKELSDIAHR...TPSGQAGAAASESLFVSNHAY sp|P04075|ALDOA_H...
## [9]   418 MARRKPEGSSFNMTHLSMAMAF...TPSGQAGAAASESLFVSNHAY sp|P04075-2|ALDOA...

0.3 The PSM data

library("mzID")
idfile <- system.file("extdata/Thermo_Hela_PRTC_selected.mzid",
                      package = "Pbase")
id <- flatten(mzID(idfile))
## reading Thermo_Hela_PRTC_selected.mzid... DONE!
dim(id)
## [1] 137  29
head(id)
##     spectrumid scan number(s)
## 1    index=173          12256
## 1.1  index=173          12256
## 2    index=163          11860
## 2.1  index=163          11860
## 3    index=200          13408
## 3.1  index=200          13408
##                                                                                spectrum title
## 1   msLevel 2; retentionTime 2094.56706; scanNum 12256; precMz 1137.06665029649; precCharge 2
## 1.1 msLevel 2; retentionTime 2094.56706; scanNum 12256; precMz 1137.06665029649; precCharge 2
## 2   msLevel 2; retentionTime 2039.84424; scanNum 11860; precMz 1136.57450195803; precCharge 2
## 2.1 msLevel 2; retentionTime 2039.84424; scanNum 11860; precMz 1136.57450195803; precCharge 2
## 3   msLevel 2; retentionTime 2258.27868; scanNum 13408; precMz 703.038108542133; precCharge 3
## 3.1 msLevel 2; retentionTime 2258.27868; scanNum 13408; precMz 703.038108542133; precCharge 3
##     acquisitionnum passthreshold rank calculatedmasstocharge
## 1              173          TRUE    1               1136.574
## 1.1            173          TRUE    1               1136.574
## 2              163          TRUE    1               1136.574
## 2.1            163          TRUE    1               1136.574
## 3              200          TRUE    1                703.037
## 3.1            200          TRUE    1                703.037
##     experimentalmasstocharge chargestate ms-gf:denovoscore ms-gf:evalue
## 1                  1137.0667           2               132 2.597097e-18
## 1.1                1137.0667           2               132 2.597097e-18
## 2                  1136.5745           2               230 4.942664e-17
## 2.1                1136.5745           2               230 4.942664e-17
## 3                   703.0381           3               145 4.080429e-10
## 3.1                 703.0381           3               145 4.080429e-10
##     ms-gf:rawscore ms-gf:specevalue assumeddissociationmethod isotopeerror
## 1              118     2.276758e-22                       CID            1
## 1.1            118     2.276758e-22                       CID            1
## 2              186     4.333009e-21                       CID            0
## 2.1            186     4.333009e-21                       CID            0
## 3               98     3.578068e-14                       CID            0
## 3.1             98     3.578068e-14                       CID            0
##     isdecoy post pre end start               accession length
## 1     FALSE    C   K 134   112   sp|P04075|ALDOA_HUMAN    364
## 1.1   FALSE    C   K 188   166 sp|P04075-2|ALDOA_HUMAN    418
## 2     FALSE    C   K 134   112   sp|P04075|ALDOA_HUMAN    364
## 2.1   FALSE    C   K 188   166 sp|P04075-2|ALDOA_HUMAN    418
## 3     FALSE    Y   K 173   154   sp|P04075|ALDOA_HUMAN    364
## 3.1   FALSE    Y   K 227   208 sp|P04075-2|ALDOA_HUMAN    418
##                                                                description
## 1      Fructose-bisphosphate aldolase A OS=Homo sapiens GN=ALDOA PE=1 SV=2
## 1.1 Isoform 2 of Fructose-bisphosphate aldolase A OS=Homo sapiens GN=ALDOA
## 2      Fructose-bisphosphate aldolase A OS=Homo sapiens GN=ALDOA PE=1 SV=2
## 2.1 Isoform 2 of Fructose-bisphosphate aldolase A OS=Homo sapiens GN=ALDOA
## 3      Fructose-bisphosphate aldolase A OS=Homo sapiens GN=ALDOA PE=1 SV=2
## 3.1 Isoform 2 of Fructose-bisphosphate aldolase A OS=Homo sapiens GN=ALDOA
##                      pepseq modified modification
## 1   GVVPLAGTNGETTTQGLDGLSER    FALSE         <NA>
## 1.1 GVVPLAGTNGETTTQGLDGLSER    FALSE         <NA>
## 2   GVVPLAGTNGETTTQGLDGLSER    FALSE         <NA>
## 2.1 GVVPLAGTNGETTTQGLDGLSER    FALSE         <NA>
## 3      IGEHTPSALAIMENANVLAR    FALSE         <NA>
## 3.1    IGEHTPSALAIMENANVLAR    FALSE         <NA>
##                             idFile                  spectrumFile
## 1   Thermo_Hela_PRTC_selected.mzid Thermo_Hela_PRTC_selected.mgf
## 1.1 Thermo_Hela_PRTC_selected.mzid Thermo_Hela_PRTC_selected.mgf
## 2   Thermo_Hela_PRTC_selected.mzid Thermo_Hela_PRTC_selected.mgf
## 2.1 Thermo_Hela_PRTC_selected.mzid Thermo_Hela_PRTC_selected.mgf
## 3   Thermo_Hela_PRTC_selected.mzid Thermo_Hela_PRTC_selected.mgf
## 3.1 Thermo_Hela_PRTC_selected.mzid Thermo_Hela_PRTC_selected.mgf
##                     databaseFile
## 1   HUMAN_2015_02_selected.fasta
## 1.1 HUMAN_2015_02_selected.fasta
## 2   HUMAN_2015_02_selected.fasta
## 2.1 HUMAN_2015_02_selected.fasta
## 3   HUMAN_2015_02_selected.fasta
## 3.1 HUMAN_2015_02_selected.fasta

0.4 The Proteins object

library("Pbase")
p <- Proteins(fafile)
p <- addIdentificationData(p, idfile)
## Reading 1 identification files:
##   1. /tmp/RtmpL0a8Lu/Rinst37dbac3976a/Pbase/extdata/Thermo_Hela_PRTC_selected.mzid
## done.
p
## S4 class type     : Proteins
## Class version     : 0.2
## Created           : Mon Oct 30 19:59:24 2017
## Number of Proteins: 9
## Sequences:
##   [1] A4UGR9 [2] A6H8Y1 ... [8] P04075-2 [9] P60709
## Protein ranges:
##   Peptides

A Proteins object is composed of a set of protein sequences accessible with the aa accessor as well as an optional set of peptides features that are mapped as coordinates along the proteins, available with pranges. The actual peptide sequences can be extraced with pfeatures. The names of the protein sequences can be extraced with seqnames.

aa(p)
##   A AAStringSet instance of length 9
##     width seq                                            names               
## [1]  3374 MSPESGHSRIFEATAGPNKPES...YTLSKDSLSNGVPSGRQAEFS A4UGR9
## [2]  2624 MFRRARLSVKPNVRPGVGARGS...EATTVSEYFFNDIFIEVDETE A6H8Y1
## [3]   911 MVDYHAANQSYQYGPSSAGNGA...AVPGALDYKSFSTALYGESDL O43707
## [4]  2602 MPVTEKDLAEDAPWKKIQQNTF...VLAVKWGEEHIPGSPFHVTVP O75369
## [5]   417 MSLSNKLTLDKLDVKGKRVVMR...GASLELLEGKVLPGVDALSNI P00558
## [6]   664 METPSQRRATRSGAQASSTPLS...RSYLLGNSSPRTQSPQNCSIM P02545
## [7]   364 MPYQYPALTPEQKKELSDIAHR...TPSGQAGAAASESLFVSNHAY P04075
## [8]   418 MARRKPEGSSFNMTHLSMAMAF...TPSGQAGAAASESLFVSNHAY P04075-2
## [9]   375 MDDDIAALVVDNGSGMCKAGFA...MWISKQEYDESGPSIVHRKCF P60709
seqnames(p)
## [1] "A4UGR9"   "A6H8Y1"   "O43707"   "O75369"   "P00558"   "P02545"  
## [7] "P04075"   "P04075-2" "P60709"
pranges(p)
## DataFrame with 9 rows and 1 column
##                                     Peptides
##                                <IRangesList>
## 1 [2743, 2760] [ 307,  318] [1858, 1870] ...
## 2 [ 448,  465] [1284, 1291] [1120, 1128] ...
## 3       [ 51,  65] [495, 512] [438, 450] ...
## 4 [ 895,  909] [1746, 1757] [2563, 2578] ...
## 5       [193, 206] [268, 275] [333, 350] ...
## 6       [  1,  11] [332, 349] [367, 377] ...
## 7       [112, 134] [112, 134] [154, 173] ...
## 8       [166, 188] [166, 188] [208, 227] ...
## 9                                 [184, 196]
pfeatures(p)
## AAStringSetList of length 9
## [["A4UGR9"]] A4UGR9=QEITQNKSFFSSVKESQR ... A4UGR9=QEITQNKSFFSSVK
## [["A6H8Y1"]] A6H8Y1=EDAEQVALEVDLNQKKRR ...
## [["O43707"]] O43707=QQRKTFTAWCNSHLR ... O43707=VGWEQLLTTIAR
## [["O75369"]] O75369=DLDIIDNYDYSHTVK ... O75369=VQAQGPGLKEAFTNK
## [["P00558"]] P00558=ELNYFAKALESPER P00558=DLMSKAEK ... P00558=GTKALMDEVVK
## [["P02545"]] P02545=METPSQRRATR ... P02545=RATRSGAQASSTPLSPTR
## [["P04075"]] P04075=GVVPLAGTNGETTTQGLDGLSER ...
## [["P04075-2"]] P04075-2=GVVPLAGTNGETTTQGLDGLSER ...
## [["P60709"]] P60709=DLTDYLMKILTER

A Proteins instance is further described by general metadata list. Protein sequence and peptide features annotations can be accessed with acols and pcols respectively, which return DataFrame instances.

metadata(p)
## $created
## [1] "Mon Oct 30 19:59:24 2017"
acols(p)
## DataFrame with 9 rows and 12 columns
##      DB AccessionNumber   EntryName IsoformName
##   <Rle>     <character> <character>       <Rle>
## 1    sp          A4UGR9 XIRP2_HUMAN          NA
## 2    sp          A6H8Y1  BDP1_HUMAN          NA
## 3    sp          O43707 ACTN4_HUMAN          NA
## 4    sp          O75369  FLNB_HUMAN          NA
## 5    sp          P00558  PGK1_HUMAN          NA
## 6    sp          P02545  LMNA_HUMAN          NA
## 7    sp          P04075 ALDOA_HUMAN          NA
## 8    sp        P04075-2 ALDOA_HUMAN           2
## 9    sp          P60709  ACTB_HUMAN          NA
##                                         ProteinName OrganismName GeneName
##                                         <character>        <Rle>    <Rle>
## 1     Xin actin-binding repeat-containing protein 2 Homo sapiens    XIRP2
## 2 Transcription factor TFIIIB component B'' homolog Homo sapiens     BDP1
## 3                                   Alpha-actinin-4 Homo sapiens    ACTN4
## 4                                         Filamin-B Homo sapiens     FLNB
## 5                         Phosphoglycerate kinase 1 Homo sapiens     PGK1
## 6                                      Prelamin-A/C Homo sapiens     LMNA
## 7                  Fructose-bisphosphate aldolase A Homo sapiens    ALDOA
## 8                  Fructose-bisphosphate aldolase A Homo sapiens    ALDOA
## 9                              Actin, cytoplasmic 1 Homo sapiens     ACTB
##            ProteinExistence SequenceVersion Comment
##                       <Rle>           <Rle>   <Rle>
## 1 Evidence at protein level               2      NA
## 2 Evidence at protein level               3      NA
## 3 Evidence at protein level               2      NA
## 4 Evidence at protein level               2      NA
## 5 Evidence at protein level               3      NA
## 6 Evidence at protein level               1      NA
## 7 Evidence at protein level               2      NA
## 8                        NA              NA      NA
## 9 Evidence at protein level               1      NA
##                                                                      Filename
##                                                                         <Rle>
## 1 /tmp/RtmpL0a8Lu/Rinst37dbac3976a/Pbase/extdata/HUMAN_2015_02_selected.fasta
## 2 /tmp/RtmpL0a8Lu/Rinst37dbac3976a/Pbase/extdata/HUMAN_2015_02_selected.fasta
## 3 /tmp/RtmpL0a8Lu/Rinst37dbac3976a/Pbase/extdata/HUMAN_2015_02_selected.fasta
## 4 /tmp/RtmpL0a8Lu/Rinst37dbac3976a/Pbase/extdata/HUMAN_2015_02_selected.fasta
## 5 /tmp/RtmpL0a8Lu/Rinst37dbac3976a/Pbase/extdata/HUMAN_2015_02_selected.fasta
## 6 /tmp/RtmpL0a8Lu/Rinst37dbac3976a/Pbase/extdata/HUMAN_2015_02_selected.fasta
## 7 /tmp/RtmpL0a8Lu/Rinst37dbac3976a/Pbase/extdata/HUMAN_2015_02_selected.fasta
## 8 /tmp/RtmpL0a8Lu/Rinst37dbac3976a/Pbase/extdata/HUMAN_2015_02_selected.fasta
## 9 /tmp/RtmpL0a8Lu/Rinst37dbac3976a/Pbase/extdata/HUMAN_2015_02_selected.fasta
##       npeps
##   <integer>
## 1        36
## 2        23
## 3         6
## 4        13
## 5         5
## 6        12
## 7        21
## 8        20
## 9         1
pcols(p)
## DataFrame with 9 rows and 1 column
##                                     Peptides
##                                <IRangesList>
## 1 [2743, 2760] [ 307,  318] [1858, 1870] ...
## 2 [ 448,  465] [1284, 1291] [1120, 1128] ...
## 3       [ 51,  65] [495, 512] [438, 450] ...
## 4 [ 895,  909] [1746, 1757] [2563, 2578] ...
## 5       [193, 206] [268, 275] [333, 350] ...
## 6       [  1,  11] [332, 349] [367, 377] ...
## 7       [112, 134] [112, 134] [154, 173] ...
## 8       [166, 188] [166, 188] [208, 227] ...
## 9                                 [184, 196]

Specific proteins can be extracted by index of name using [ and proteins and their peptide features can be plotted with the default plot method.

seqnames(p)
## [1] "A4UGR9"   "A6H8Y1"   "O43707"   "O75369"   "P00558"   "P02545"  
## [7] "P04075"   "P04075-2" "P60709"
plot(p[c(1,9)])

More details can be found in ?Proteins. The object generated above is also directly available as data(p).

0.5 Session information

sessionInfo()
## R version 3.4.2 (2017-09-28)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Ubuntu 16.04.3 LTS
## 
## Matrix products: default
## BLAS: /home/biocbuild/bbs-3.6-bioc/R/lib/libRblas.so
## LAPACK: /home/biocbuild/bbs-3.6-bioc/R/lib/libRlapack.so
## 
## locale:
##  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
##  [3] LC_TIME=en_US.UTF-8        LC_COLLATE=C              
##  [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
##  [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
##  [9] LC_ADDRESS=C               LC_TELEPHONE=C            
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       
## 
## attached base packages:
##  [1] grid      stats4    parallel  stats     graphics  grDevices utils    
##  [8] datasets  methods   base     
## 
## other attached packages:
##  [1] mzID_1.16.0          Biostrings_2.46.0    XVector_0.18.0      
##  [4] Pbase_0.18.0         Gviz_1.22.0          GenomicRanges_1.30.0
##  [7] GenomeInfoDb_1.14.0  IRanges_2.12.0       S4Vectors_0.16.0    
## [10] Rcpp_0.12.13         BiocGenerics_0.24.0  BiocStyle_2.6.0     
## 
## loaded via a namespace (and not attached):
##   [1] ProtGenerics_1.10.0           bitops_1.0-6                 
##   [3] matrixStats_0.52.2            bit64_0.9-7                  
##   [5] doParallel_1.0.11             RColorBrewer_1.1-2           
##   [7] progress_1.1.2                httr_1.3.1                   
##   [9] rprojroot_1.2                 MSnbase_2.4.0                
##  [11] tools_3.4.2                   backports_1.1.1              
##  [13] affyio_1.48.0                 R6_2.2.2                     
##  [15] cleaver_1.16.0                rpart_4.1-11                 
##  [17] Hmisc_4.0-3                   DBI_0.7                      
##  [19] lazyeval_0.2.1                colorspace_1.3-2             
##  [21] nnet_7.3-12                   gridExtra_2.3                
##  [23] prettyunits_1.0.2             RMySQL_0.10.13               
##  [25] Pviz_1.12.0                   preprocessCore_1.40.0        
##  [27] bit_1.1-12                    curl_3.0                     
##  [29] compiler_3.4.2                Biobase_2.38.0               
##  [31] htmlTable_1.9                 DelayedArray_0.4.0           
##  [33] rtracklayer_1.38.0            bookdown_0.5                 
##  [35] scales_0.5.0                  checkmate_1.8.5              
##  [37] affy_1.56.0                   stringr_1.2.0                
##  [39] digest_0.6.12                 Rsamtools_1.30.0             
##  [41] foreign_0.8-69                rmarkdown_1.6                
##  [43] base64enc_0.1-3               dichromat_2.0-0              
##  [45] htmltools_0.3.6               limma_3.34.0                 
##  [47] ensembldb_2.2.0               BSgenome_1.46.0              
##  [49] htmlwidgets_0.9               rlang_0.1.2                  
##  [51] impute_1.52.0                 RSQLite_2.0                  
##  [53] BiocInstaller_1.28.0          shiny_1.0.5                  
##  [55] BiocParallel_1.12.0           acepack_1.4.1                
##  [57] VariantAnnotation_1.24.0      RCurl_1.95-4.8               
##  [59] magrittr_1.5                  GenomeInfoDbData_0.99.1      
##  [61] Formula_1.2-2                 MALDIquant_1.16.4            
##  [63] Matrix_1.2-11                 munsell_0.4.3                
##  [65] vsn_3.46.0                    stringi_1.1.5                
##  [67] yaml_2.1.14                   SummarizedExperiment_1.8.0   
##  [69] zlibbioc_1.24.0               plyr_1.8.4                   
##  [71] AnnotationHub_2.10.0          blob_1.1.0                   
##  [73] lattice_0.20-35               splines_3.4.2                
##  [75] GenomicFeatures_1.30.0        mzR_2.12.0                   
##  [77] knitr_1.17                    codetools_0.2-15             
##  [79] biomaRt_2.34.0                XML_3.98-1.9                 
##  [81] evaluate_0.10.1               biovizBase_1.26.0            
##  [83] latticeExtra_0.6-28           pcaMethods_1.70.0            
##  [85] data.table_1.10.4-3           foreach_1.4.3                
##  [87] httpuv_1.3.5                  gtable_0.2.0                 
##  [89] assertthat_0.2.0              ggplot2_2.2.1                
##  [91] mime_0.5                      xtable_1.8-2                 
##  [93] AnnotationFilter_1.2.0        survival_2.41-3              
##  [95] tibble_1.3.4                  iterators_1.0.8              
##  [97] GenomicAlignments_1.14.0      AnnotationDbi_1.40.0         
##  [99] memoise_1.1.0                 cluster_2.0.6                
## [101] interactiveDisplayBase_1.16.0