modelTurnover {pulsedSilac} | R Documentation

## Estimate protein/peptide turnover

### Description

Method to apply turnover models on protein/peptide data

### Usage

    modelTurnover(x, ...)

    ## S4 method for signature 'SilacProteinExperiment'
    modelTurnover(
      x,
      assayName = "fraction",
      formula = "fraction ~ 1-exp(-k*t)",
      start = list(k = 0.02),
      robust = FALSE,
      mode = "protein",
      verbose = FALSE,
      returnModel = FALSE,
      conditionCol,
      timeCol,
      silent = TRUE,
      ...
    )

    ## S4 method for signature 'SilacPeptideExperiment'
    modelTurnover(
      x,
      assayName = "fraction",
      formula = "fraction ~ 1-exp(-k*t)",
      start = list(k = 0.02),
      robust = FALSE,
      mode = c("grouped", "peptide"),
      verbose = FALSE,
      returnModel = FALSE,
      conditionCol,
      timeCol,
      proteinCol,
      silent = TRUE,
      ...
    )

    ## S4 method for signature 'SilacProteomicsExperiment'
    modelTurnover(
      x,
      assayName = "fraction",
      formula = "fraction ~ 1-exp(-k*t)",
      start = list(k = 0.02),
      robust = FALSE,
      mode = c("protein", "grouped", "peptide"),
      verbose = FALSE,
      returnModel = FALSE,
      conditionCol,
      timeCol,
      proteinCol,
      silent = TRUE,
      ...
    )

### Arguments

`x` | A `SilacProteinExperiment`, `SilacPeptideExperiment` or `SilacProteomicsExperiment` object.
`...` | further parameters passed into `nls` or `nlrob`.
`assayName` | `character` indicating which assay to use as data input for the model.
`formula` | `formula` to be used. Time must always be named "t" and the data must be named "fraction".
`start` | named `list` with the initical values for the parameters in formula.
`robust` | `logical` indicating if robust modelling from the `robustbase` package should be used.
`mode` | `character` indicating which type of data should be used. Can be "protein": one model per protein; "grouped": one model per protein using peptide data; "peptide" one model per peptide.
`verbose` | `logical` indicating if a progress bar should be printed.
`returnModel` | `logical` indicating if the model objects should be returned also in the output.
`conditionCol` | `character` indicating which column of colData(x) describes the conditions.
`timeCol` | `character` indicating which column of colData(x) describes time.
`silent` | `logical` indicating if the errors given by nls/nlrob should be printed.
`proteinCol` | `character` indicating which column of rowData(x) describes the assigned protein to a peptide. (Only for peptide data)

### Details

The nls and nlrob functions have many arguments that can be tunned for parameter fitting. Unfortunately, not all the possible argument combinations have been tested. It is recommended to first test one model with the desired parameters with silent = FALSE to see that it runs smoothly and then run the whole proteome with silent = TRUE to supress failed convergence errors. For example, some methods for nlrob use upper and lower bounds instead of start.

Please open an issue on github if the function is having trouble with a particular argument.

For robust modelling the method 'CM' and 'mtl' are not yet supported.

### Value

A named `list` with either model metrics in matrices or the model objects.

### Examples

    data('wormsPE')
    wormsPE <- calculateIsotopeFraction(wormsPE, ratioAssay = 'ratio')

    modelList <- modelTurnover(x = wormsPE[1:10],
                               assayName = 'fraction',
                               formula = 'fraction ~ 1 - exp(-k*t)',
                               start = list(k = 0.02),
                               mode = 'protein',
                               robust = FALSE,
                               returnModel = TRUE,
                               silent = TRUE)

[Package pulsedSilac version 1.8.0 Index]