| Title: | Identifying Similar T Cell Receptor Hyper-Variable Sequences with 'ClusTCR2' | 
| Version: | 1.7.3.01 | 
| Date: | 2024-05-15 | 
| Author: | Kerry A. Mullan [aut, cre], Sebastiaan Valkiers [aut, ctb], Kris Laukens [aut, ctb], Pieter Meysman [aut, ctb] | 
| Description: | Enhancing T cell receptor (TCR) sequence analysis, 'ClusTCR2', based on 'ClusTCR' python program, leverages Hamming distance to compare the complement-determining region three (CDR3) sequences for sequence similarity, variable gene (V gene) and length. The second step employs the Markov Cluster Algorithm to identify clusters within an undirected graph, providing a summary of amino acid motifs and matrix for generating network plots. Tailored for single-cell RNA-seq data with integrated TCR-seq information, 'ClusTCR2' is integrated into the Single Cell TCR and Expression Grouped Ontologies (STEGO) R application or 'STEGO.R'. See the two publications for more details. Sebastiaan Valkiers, Max Van Houcke, Kris Laukens, Pieter Meysman (2021) <doi:10.1093/bioinformatics/btab446>, Kerry A. Mullan, My Ha, Sebastiaan Valkiers, Nicky de Vrij, Benson Ogunjimi, Kris Laukens, Pieter Meysman (2023) <doi:10.1101/2023.09.27.559702>. | 
| Maintainer: | Kerry A. Mullan <Kerry.Mullan@uantwerpen.be> | 
| License: | GPL (≥ 3) | 
| Encoding: | UTF-8 | 
| RoxygenNote: | 7.3.1 | 
| Suggests: | knitr, rmarkdown, testthat (≥ 3.0.0) | 
| Config/testthat/edition: | 3 | 
| Imports: | DescTools, ggplot2, ggseqlogo, network, plyr, RColorBrewer, stringr, scales, sna, VLF | 
| biocViews: | GeneTarget, SingleCell | 
| VignetteBuilder: | knitr | 
| NeedsCompilation: | no | 
| Packaged: | 2024-05-15 16:22:16 UTC; kerrymullan | 
| Repository: | CRAN | 
| Date/Publication: | 2024-05-16 15:00:19 UTC | 
Creates ClusTCR matrix This function identifies similar CDR3 amino acid sequences based on the same length and V_gene
Description
Creates ClusTCR matrix This function identifies similar CDR3 amino acid sequences based on the same length and V_gene
Usage
ClusTCR(my_file, allele = NULL, v_gene = "v_call")
Arguments
| my_file | uploaded file with junction_aa (CD3 sequences), variable gene. | 
| allele | The allele, if present as *00 will be removed if the user requires it. | 
| v_gene | Variable gene column name | 
Value
X by Y matrix of structurally related CDR3 sequences.
Examples
# Example usage of ClusTCR function with a stored file
example_file <- read.csv(system.file("extdata", "my_data.csv", package = "ClusTCR2"))
# Perform clustering using ClusTCR function
step1 <- ClusTCR(example_file, allele = FALSE)
# Print the result
print(step1)
Creates ClusTCR matrix This function identifies similar CDR3 amino acid sequences based on the same length and V_gene
Description
Creates ClusTCR matrix This function identifies similar CDR3 amino acid sequences based on the same length and V_gene
Usage
ClusTCR_Large(my_file, allele = NULL, v_gene = "v_call")
Arguments
| my_file | uploaded file with junction_aa (CD3 sequences), variable gene. | 
| allele | The allele, if present as *00 will be removed if the user requires it. | 
| v_gene | Variable gene column name | 
Value
X by Y matrix of structurally related CDR3 sequences.
Code for plotting the Motif based on a specific CDR3 length and V gene (see netplot_ClusTCR2 for details).
Description
Code for plotting the Motif based on a specific CDR3 length and V gene (see netplot_ClusTCR2 for details).
Usage
Motif_from_cluster_file(
  ClusTCR,
  Clust_selected = NULL,
  selected_cluster_column = "Clust_size_order"
)
Arguments
| ClusTCR | Cluster file produced from mcl_cluster. | 
| Clust_selected | Select which cluster to review. | 
| selected_cluster_column | Select the column "Clust_size_order" of the cluster ordered. | 
Value
A ggplot object representing the motif.
Copied code from ggnet's ggnet2 function
Description
Copied code from ggnet's ggnet2 function
Usage
ggnet2(
  net,
  mode = "fruchtermanreingold",
  layout.par = NULL,
  layout.exp = 0,
  alpha = 1,
  color = "grey75",
  shape = 19,
  size = 9,
  max_size = 9,
  na.rm = NA,
  palette = NULL,
  alpha.palette = NULL,
  alpha.legend = NA,
  color.palette = palette,
  color.legend = NA,
  shape.palette = NULL,
  shape.legend = NA,
  size.palette = NULL,
  size.legend = NA,
  size.zero = FALSE,
  size.cut = FALSE,
  size.min = NA,
  size.max = NA,
  label = FALSE,
  label.alpha = 1,
  label.color = "black",
  label.size = max_size/2,
  label.trim = FALSE,
  node.alpha = alpha,
  node.color = color,
  node.label = label,
  node.shape = shape,
  node.size = size,
  edge.alpha = 1,
  edge.color = "grey50",
  edge.lty = "solid",
  edge.size = 0.25,
  edge.label = NULL,
  edge.label.alpha = 1,
  edge.label.color = label.color,
  edge.label.fill = "white",
  edge.label.size = max_size/2,
  arrow.size = 0,
  arrow.gap = 0,
  arrow.type = "closed",
  legend.size = 9,
  legend.position = "right",
  ...
)
Arguments
| net | net plot from step 2. | 
| mode | = "fruchtermanreingold" | 
| layout.par | = NULL, | 
| layout.exp | = 0 | 
| alpha | = 1 | 
| color | = "grey75" | 
| shape | = 19 | 
| size | = 9 | 
| max_size | = 9 | 
| na.rm | = NA | 
| palette | = NULL | 
| alpha.palette | = NULL | 
| alpha.legend | = NA | 
| color.palette | = palette | 
| color.legend | = NA | 
| shape.palette | = NULL | 
| shape.legend | = NA | 
| size.palette | = NULL | 
| size.legend | = NA | 
| size.zero | = FALSE | 
| size.cut | = FALSE | 
| size.min | = NA | 
| size.max | = NA | 
| label | = FALSE | 
| label.alpha | = 1 | 
| label.color | = "black" | 
| label.size | = max_size/2 | 
| label.trim | = FALSE | 
| node.alpha | see  | 
| node.color | see  | 
| node.label | see  | 
| node.shape | see  | 
| node.size | see  | 
| edge.alpha | = 1 | 
| edge.color | the color of the edges, as a color value, a vector of color
values, or as an edge attribute containing color values.
Defaults to  | 
| edge.lty | = "solid" | 
| edge.size | = 0.25 | 
| edge.label | = NULL | 
| edge.label.alpha | = 1 | 
| edge.label.color | = label.color | 
| edge.label.fill | = "white" | 
| edge.label.size | = max_size/2 | 
| arrow.size | = 0 | 
| arrow.gap | = 0 | 
| arrow.type | = "closed" | 
| legend.size | = 9 | 
| legend.position | = "right" | 
| ... | Other functions in ggplot2 | 
Value
A ggplot object displaying the network plot.
Create the files for labeling the linked clusters from ClusTCR_list_to_matrix function
Description
Create the files for labeling the linked clusters from ClusTCR_list_to_matrix function
Usage
mcl_cluster(my_file, max.iter = 10, inflation = 1, expansion = 1)
Arguments
| my_file | Matrix file produce from ClusTCR | 
| max.iter | Number of iterations to find the steady state of MCL. | 
| inflation | numeric value | 
| expansion | numeric value | 
Value
A list containing two elements:
- 'Cluster_lab': Data frame containing information about the clusters 
- 'Normalised_tabel': Normalized table used in the clustering process 
Examples
# Example usage of mcl_cluster function with a stored file
example_file <- read.csv(system.file("extdata", "my_data.csv",package = "ClusTCR2"))
# Perform clustering using mcl_cluster function
step1 <- ClusTCR(example_file,allele = FALSE)
# perform mcl
step2 <- mcl_cluster(step1)
Create the files for labeling the linked clusters from ClusTCR_list_to_matrix function
Description
Create the files for labeling the linked clusters from ClusTCR_list_to_matrix function
Usage
mcl_cluster_large(my_file, max.iter = 10, inflation = 1, expansion = 1)
Arguments
| my_file | Matrix file produce from ClusTCR | 
| max.iter | Number of iterations to find the steady state of MCL. | 
| inflation | numeric value | 
| expansion | numeric value | 
Value
A list containing two elements:
- 'Cluster_lab': Data frame containing information about the clusters 
- 'Normalised_tabel': Normalized table used in the clustering process 
Code for plotting the Motif based on a specific CDR3 length and V gene (see netplot_ClusTCR2 for ).
Description
Code for plotting the Motif based on a specific CDR3 length and V gene (see netplot_ClusTCR2 for ).
Usage
motif_plot(
  ClusTCR,
  Clust_column_name = "Clust_size_order",
  Clust_selected = NULL
)
Arguments
| ClusTCR | Matrix file produce from mcl_cluster | 
| Clust_column_name | Name of clustering column from mcl_cluster file e.g. cluster | 
| Clust_selected | Select which cluster to display. Only one at a time. | 
Value
A ggplot object representing the motif.
Examples
# Example usage of mcl_cluster function with a stored file
example_file <- read.csv(system.file("extdata", "my_data.csv",package = "ClusTCR2"))
# Perform clustering using mcl_cluster function
step1 <- ClusTCR(example_file,allele = FALSE)
# perform mcl
step2 <- mcl_cluster(step1)
# print the motif plot for the simple clustering
print(motif_plot(step2,Clust_selected = 1))
Code for plotting the Motif based on a specific CDR3 length and V gene (see netplot_ClusTCR2 for details).
Description
Code for plotting the Motif based on a specific CDR3 length and V gene (see netplot_ClusTCR2 for details).
Usage
motif_plot_large(
  ClusTCRFile_large,
  Clust_column_name = "Clust_size_order",
  Clust_selected = NULL
)
Arguments
| ClusTCRFile_large | Matrix file produced from mcl_cluster_large. | 
| Clust_column_name | Name of clustering column from mcl_cluster file e.g. cluster. | 
| Clust_selected | Select which cluster to display. Only one at a time. | 
Value
A ggplot object representing the motif.
Code for displaying the network.
Description
Code for displaying the network.
Usage
netplot_ClusTCR2(
  ClusTCR,
  filter_plot = 0,
  Clust_selected = 1,
  selected_col = "purple",
  selected_text_col = "black",
  selected_text_size = 3,
  non_selected_text_size = 2,
  Clust_column_name = "cluster",
  label = c("Name", "cluster", "CDR3", "V_gene", "Len"),
  non_selected_col = "grey80",
  non_selected_text_col = "grey40",
  alpha_selected = 1,
  alpha_non_selected = 0.5,
  colour = "color_test",
  all.colour = "default"
)
Arguments
| ClusTCR | File produced from mcl_cluster | 
| filter_plot | Filter's plot to remove connects grater than # e.g. 2 = 3 or more connections. | 
| Clust_selected | Select which cluster to label. | 
| selected_col | Color of selected cluster (Default = purple) | 
| selected_text_col | Color of selected cluster text (Default = black) | 
| selected_text_size | Text size of selected cluster (Default = 3) | 
| non_selected_text_size | Text size of non-selected clusters (Default = 2) | 
| Clust_column_name | Name of clustering column from mcl_cluster file e.g. cluster (Re-numbering the original_cluster), Original_cluster, Clust_size_order (Based on cluster size e.g. number of nodes) | 
| label | Name to display on cluster: Name (CDR3_V_gene_Cluster), cluster, CDR3, V_gene, Len (length of CDR3 sequence), CDR3_selected, V_gene_selected, Name_selected,cluster_selected, (_selected only prints names of the chosen cluster), None | 
| non_selected_col | Color of selected cluster (Default = grey80) | 
| non_selected_text_col | Color of selected clusters text (Default = grey40) | 
| alpha_selected | Transparency of selected cluster (default = 1) | 
| alpha_non_selected | Transparency of non-selected clusters (default = 0.5) | 
| colour | Colour selected = "color_test" or all = "color_all" | 
| all.colour | Colours all points by: rainbow, random, heat.colors, terrain.colors, topo.colors, hcl.colors and default | 
Value
A ggplot object displaying the network plot.
Examples
# Example usage of mcl_cluster function with a stored file
example_file <- read.csv(system.file("extdata", "my_data.csv",package = "ClusTCR2"))
# Perform clustering using mcl_cluster function
step1 <- ClusTCR(example_file,allele = FALSE)
# perform mcl
step2 <- mcl_cluster(step1)
# print the clustering plot after performing step 1 and step 2
print(netplot_ClusTCR2(step2, label = "Name_selected"))