knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  fig.path = "inst/extdata",
  out.width = "100%"
)

predatoR: Mutation Impact Prediction Based on Network Properties

License: MIT R-CMD-check Codecov test coverage

Overview

predatoR is a tool for mutation impact prediction based on network properties.

predatoR() function is the wrapper function of predatoR package.

predatoR() works on each PDB respectively. For each PDB;

Installation

You can install the predatoR via devtools:

``` {r installation_guide, eval=FALSE} library(devtools) install_github("berkgurdamar/predatoR")

# Usage

Mutation impact prediction can be done via `predatoR()` function:

`predatoR()` uses data.frame structures as an input. data.frame should consist of __'PDB_ID'__, __'Chain'__, __'Position'__, __'Orig_AA'__, __'Mut_AA'__ and __'Gene_Name'__ (optional). Predictions can be made by using 2 different models, 5 Angstrom (Å)-all atoms model and 7Å-carbon alpha (Cα) atoms only model.

```r
test_data <- as.data.frame(rbind(c("3SQJ", "A", 196, "GLN", "LEU", "ALB"),
                               c("3SQJ", "A", 396, "GLU", "LYS", "ALB")))
colnames(test_data) <- c("PDB_ID", "Chain", "Position", "Orig_AA", "Mut_AA", "Gene_Name")
knitr::kable(test_data, align = c("c", "c", "c", "c", "c", "c"))

predatoR() can work with input which has partially included gene names.

library(predatoR)
# Gene name included
input_df <- as.data.frame(rbind(c("3SQJ", "A", 196, "GLN", "LEU", "ALB"),
                               c("3SQJ", "A", 396, "GLU", "LYS", "ALB")))
pred_res <- predatoR(info_df =  input_df, n_threads = 8, gene_name_info = TRUE)
# Gene name not included
input_df <- as.data.frame(rbind(c("3SQJ", "A", 196, "GLN", "LEU"),
                               c("3SQJ", "A", 396, "GLU", "LYS")))
pred_res <- predatoR(info_df =  input_df, n_threads = 8, gene_name_info = FALSE)
# Partially included gene names
input_df <- as.data.frame(rbind(c("3SQJ", "A", 196, "GLN", "LEU", "ALB"),
                               c("3SQJ", "A", 396, "GLU", "LYS", "")))
pred_res <- predatoR(info_df =  input_df, n_threads = 8, gene_name_info = TRUE)

predatoR() function returns a data.frame which contains additional two columns; 'Prediction' and 'Probability'. 'Prediction' represents the result of the impact prediction and 'Probability' represents the probability that the mutation classified as Pathogenic or Neutral.

example_result <- as.data.frame(rbind(c("3SQJ", "A", "196", "GLN", "LEU", "ALB", "Neutral", "0.6521832"),
                                      c("3SQJ", "A", "396", "GLU", "LYS", "ALB", "Neutral", "0.6009792")))
colnames(example_result) <- c("PDB_ID", "Chain", "Position", "Orig_AA", "Mut_AA", "Gene_Name", "Prediction", "Probability")
knitr::kable(example_result, align = c("c", "c", "c", "c", "c", "c", "c", "c"))

Exploratory Usage

Network properties can be calculated by using different distance cutoffs. In this approach, predatoR() does not make any prediction about the mutation, but returns a data frame contains all 24 features annotated to the dataset. Both network formalisation approaches also can be used.

# networks build using all atoms and 7.6Å cutoff
prediction_result <- predatoR(input_df, distance_cutoff = 7.6, network_approach = "all") 

# networks build using only Cα atoms and 8Å cutoff
prediction_result <- predatoR(input_df, distance_cutoff = 8, network_approach = "ca") 

Utility Functions

The wrapper function predatoR() uses the utility functions below;

Utility functions can be used alone, for more detail please see vignette via vignette("predatoR_Vignette").



berkgurdamar/predatoR documentation built on Jan. 10, 2023, 10:51 p.m.