QConQuantifier


QConQuantifier

Setup

  1. The QConQuantifier library can be downloaded from github.
  2. To build the tool please make sure that you have installed:
  3. Once everything is set up you can download the sample datasets and get started!

Example

After downloading the sample data set and building the project you can approach to analyze the data, by executing the QConQuantifier console tool.

Running the tool.

Navigate to ..\QConQuantifier\src\QConQuantifier\Scripts and open createParams.fsx with your favorite IDE. As you can see I already referenced paths fitting to the structure of the sample data. You will probably have to refine the paths a bit. Now we can use the help of intellisense to create a parameter type. In the end we will end up with a human readable Json file that we can exchange with colleagues and reuse if we want to start the console tool again.

 1: 
 2: 
 3: 
 4: 
 5: 
 6: 
 7: 
 8: 
 9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
let qConQuantifierParams = 
    {
    Name                            = "ChlamyTruncDB"
    DbFolder                        =  @"C:\Users\david\Source\Repos\netCoreRepos\QConcatifier_Samples\db"
    QConCatFastaPaths               = [@"C:\Users\david\Source\Repos\netCoreRepos\QConcatifier_Samples\fasta\PS QconCAT.fasta"]
    OrganismFastaPath               =  @"C:\Users\david\Source\Repos\netCoreRepos\QConcatifier_Samples\fasta\Chlamy_JGI5_trunc.fasta"
    ParseProteinIDRegexPattern      = "id"
    Protease                        = Protease.Trypsin
    MinMissedCleavages              = 0
    MaxMissedCleavages              = 1
    MaxMass                         = 15000.
    MinPepLength                    = 5
    MaxPepLength                    = 50
    IsotopicMod                     = [IsotopicMod.N15]
    MassMode                        = MassMode.Monoisotopic
    FixedMods                       = []            
    VariableMods                    = []
    VarModThreshold                 = 3
    ExpectedMinCharge               = 2
    ExpectedMaxCharge               = 3
    LookUpPPM                       = 30.
    ScanRange                       = 100.0,1600.0
    PSMThreshold                    = PSMThreshold.PepValue 0.05
    ScanTimeWindow                  = 2.5
    MzWindow_Da                     = 0.07
    NTerminalSeries                 = NTerminalSeries.B
    CTerminalSeries                 = CTerminalSeries.Y
    } 
1: 
System.IO.File.WriteAllText("C:\Users\david\Source\Repos\netCoreRepos\QConcatifier_Samples\params.Json",Newtonsoft.Json.JsonConvert.SerializeObject qConQuantifierParams)

After creating this parameter set and writing it to a file we have everything to start the console tool. To see which parameters the tool expects we can start it with the --help parameter.

cmd_helpOut

As you can see there are 4 parameters to provide:

  1. -i MzLiteFileDirectory: The path of the directory containing the files to analyze
  2. -o OutputDirectory : The path of the directory containing the files to analyze
  3. -p ParamFile : The path of the param file we just created
  4. -c NumberOfCores : The number of cores you want to use. Each File will be analyzed on a different Core and the results will be combined.

If I now add the correct paths the programm will start and finish after aprox. 15 minutes.:

cmd_Run

If you now navigate to your designated output folder you will find the data in a tab seperated format as "QuantifiedPeptides.txt" and a folder containing .html graphs showing the quantification results for each peptide grouped by the respective raw file.

Samples & documentation

  • On the right side you will find further tutorials.
  • API Reference contains automatically generated documentation for all types, modules and functions in the library. This includes additional brief samples on using most of the functions.

namespace System
namespace System.IO
namespace Deedle
namespace FSharpAux
namespace BioFSharp
namespace BioFSharp.Mz
namespace QConQuantifier
module Parameters

from QConQuantifier
module Domain

from QConQuantifier.Parameters
module DTO

from QConQuantifier.Parameters
val qConQuantifierParams : QConQuantifierParams
Multiple items
module Protease

from QConQuantifier.Parameters.DTO

--------------------
type Protease = | Trypsin
Multiple items
module IsotopicMod

from QConQuantifier.Parameters.DTO

--------------------
type IsotopicMod =
  | N15
  | C13
Multiple items
module MassMode

from QConQuantifier.Parameters.DTO

--------------------
type MassMode = SearchDB.MassMode
type PSMThreshold =
  | PepValue of float
  | SequestScore of float
Multiple items
module NTerminalSeries

from QConQuantifier.Parameters.DTO

--------------------
type NTerminalSeries =
  | A
  | B
  | C
  | AB
  | AC
  | BC
  | ABC
union case NTerminalSeries.B: NTerminalSeries
Multiple items
module CTerminalSeries

from QConQuantifier.Parameters.DTO

--------------------
type CTerminalSeries =
  | X
  | Y
  | Z
  | XY
  | XZ
  | YZ
  | XYZ
union case CTerminalSeries.Y: CTerminalSeries
type File =
  static member AppendAllLines : path:string * contents:IEnumerable<string> -> unit + 1 overload
  static member AppendAllText : path:string * contents:string -> unit + 1 overload
  static member AppendText : path:string -> StreamWriter
  static member Copy : sourceFileName:string * destFileName:string -> unit + 1 overload
  static member Create : path:string -> FileStream + 3 overloads
  static member CreateText : path:string -> StreamWriter
  static member Decrypt : path:string -> unit
  static member Delete : path:string -> unit
  static member Encrypt : path:string -> unit
  static member Exists : path:string -> bool
  ...
File.WriteAllText(path: string, contents: string) : unit
File.WriteAllText(path: string, contents: string, encoding: Text.Encoding) : unit
namespace Newtonsoft
namespace Newtonsoft.Json
type JsonConvert =
  static val True : string
  static val False : string
  static val Null : string
  static val Undefined : string
  static val PositiveInfinity : string
  static val NegativeInfinity : string
  static val NaN : string
  static member DefaultSettings : Func<JsonSerializerSettings> with get, set
  static member DeserializeAnonymousType<'T> : value:string * anonymousTypeObject:'T -> 'T + 1 overload
  static member DeserializeObject : value:string -> obj + 7 overloads
  ...
Newtonsoft.Json.JsonConvert.SerializeObject(value: obj) : string
Newtonsoft.Json.JsonConvert.SerializeObject(value: obj, settings: Newtonsoft.Json.JsonSerializerSettings) : string
Newtonsoft.Json.JsonConvert.SerializeObject(value: obj, [<ParamArray>] converters: Newtonsoft.Json.JsonConverter []) : string
Newtonsoft.Json.JsonConvert.SerializeObject(value: obj, formatting: Newtonsoft.Json.Formatting) : string
Newtonsoft.Json.JsonConvert.SerializeObject(value: obj, formatting: Newtonsoft.Json.Formatting, settings: Newtonsoft.Json.JsonSerializerSettings) : string
Newtonsoft.Json.JsonConvert.SerializeObject(value: obj, type: Type, settings: Newtonsoft.Json.JsonSerializerSettings) : string
Newtonsoft.Json.JsonConvert.SerializeObject(value: obj, formatting: Newtonsoft.Json.Formatting, [<ParamArray>] converters: Newtonsoft.Json.JsonConverter []) : string
Newtonsoft.Json.JsonConvert.SerializeObject(value: obj, type: Type, formatting: Newtonsoft.Json.Formatting, settings: Newtonsoft.Json.JsonSerializerSettings) : string
Fork me on GitHub