Chimeras / Scripts / Human_R_Analysis / Clemastine_DMSO / clem_CCA with adult_HCA.Rmd
clem_CCA with adult_HCA.Rmd
Raw
---
title: '[clem] CCA with adult_HCA'
author: "Nina-Lydia Kazakou"
date: '2022-07-18'
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

# Set-up

### Load libraries

```{r load_libraries, message=FALSE, warning=FALSE}
library(Seurat)
library(SeuratObject)
library(ggplot2)
library(here)
library(ggsci)
library(corrplot)
library(RColorBrewer)
```

### Colour Palette

```{r load_palette}
mypal1 <- pal_npg("nrc", alpha = 0.7)(10)
mypal2 <- pal_tron("legacy", alpha = 0.7)(7)
mypal3 <- pal_lancet("lanonc", alpha = 0.7)(9)
mypal4 <- pal_simpsons(palette = c("springfield"), alpha = 0.7)(16)
mypal5 <- pal_rickandmorty(palette = c("schwifty"), alpha = 0.7)(6)
mypal6 <- pal_futurama(palette = c("planetexpress"), alpha = 0.7)(5)
mypal7 <- pal_startrek(palette = c("uniform"), alpha = 0.7)(5)
mycoloursP<- c(mypal1, mypal2, mypal3, mypal4)
```

### Load object

```{r load_object}
clem <- readRDS(here("Data", "Human_R_Analysis", "Clemastine_DMSO", "clem_srt.rds"))
```

```{r}
DimPlot(clem, group.by = "Initial_Annotation", pt.size = 1, cols = mycoloursP[15:40], reduction = "umap", label = TRUE) & NoLegend()
```

```{r load_adult_HCA}
HCA <- readRDS("C:/Users/s1241040/Desktop/SingleCell_MonolayerCultures/MonolayerCultures/data/Processed/Original_Objects/HCA_oligos_opcs_LS.RDS")
```

```{r}
DimPlot(HCA, group.by = "ol_clusters_named", pt.size = 1, reduction = "umap", label = TRUE, cols = mycoloursP) & NoLegend()
```

### Prepare objects metadata
```{r HCA_clean-up, eval=FALSE}
HCA@meta.data$process_number <- NULL
HCA@meta.data$caseNO <- NULL
HCA@meta.data$BBN <- NULL
HCA@meta.data$PMI <- NULL
HCA@meta.data$CauseOfDeath_1a <- NULL
HCA@meta.data$CauseOfDeath_1b <- NULL
HCA@meta.data$CauseOfDeath_1c <- NULL
HCA@meta.data$CauseOfDeath_1d <- NULL
HCA@meta.data$SlideBox <- NULL
HCA@meta.data$Location_Block <- NULL
HCA@meta.data$comments <- NULL
HCA@meta.data$RNAconcRIN <- NULL
HCA@meta.data$RINvalue <- NULL
HCA@meta.data$RINvalueDate <- NULL
HCA@meta.data$RINvalueRemeasured <- NULL
HCA@meta.data$RIN <- NULL
HCA@meta.data$rEeXTRACT <- NULL
HCA@meta.data$Cryostat_date <- NULL
HCA@meta.data$ident <- NULL
HCA@meta.data$low_lib_size <- NULL
HCA@meta.data$large_lib_size <- NULL
HCA@meta.data$low_n_features <- NULL
HCA@meta.data$high_n_features <- NULL
HCA@meta.data$high_subsets_mito_percent <- NULL 
HCA@meta.data$ProcessNumber <- NULL
HCA@meta.data$ScaterQC_failed <- NULL
HCA@meta.data$scDblFinder_weighted<- NULL
HCA@meta.data$scDblFinder_ratio <- NULL
HCA@meta.data$scDblFinder_score <- NULL
HCA@meta.data$RNA_snn_res.0.5 <- NULL
HCA@meta.data$RNA_snn_res.0.1 <- NULL
HCA@meta.data$RNA_snn_res.0.01 <- NULL
HCA@meta.data$RNA_snn_res.0.2 <- NULL
HCA@meta.data$RNA_snn_res.0.3 <- NULL
HCA@meta.data$RNA_snn_res.0.4 <- NULL
HCA@meta.data$RNA_snn_res.0.6 <- NULL
HCA@meta.data$RNA_snn_res.0.7 <- NULL
HCA@meta.data$RNA_snn_res.0.9 <- NULL
HCA@meta.data$RNA_snn_res.1 <- NULL
HCA@meta.data$RNA_snn_res.0.05 <- NULL
HCA@meta.data$RNA_snn_res.0.04 <- NULL

head(HCA@meta.data, 2)

HCA@meta.data$author <- "Seeker et al."
HCA@meta.data$dataset <- "adult_HCA"
```

```{r clem_clean-up, eval=FALSE}
clem@meta.data$originalexp_snn_res.0.01 <-NULL
clem@meta.data$originalexp_snn_res.0.03 <-NULL
clem@meta.data$originalexp_snn_res.0.05 <-NULL
clem@meta.data$originalexp_snn_res.0.1 <-NULL
clem@meta.data$originalexp_snn_res.0.2 <-NULL
clem@meta.data$originalexp_snn_res.0.3 <-NULL
clem@meta.data$originalexp_snn_res.0.4 <-NULL
clem@meta.data$originalexp_snn_res.0.5 <-NULL
clem@meta.data$originalexp_snn_res.0.7 <-NULL
clem@meta.data$originalexp_snn_res.0.8 <-NULL
clem@meta.data$originalexp_snn_res.0.9 <-NULL
clem@meta.data$originalexp_snn_res.1  <-NULL
clem@meta.data$old.ident <-NULL

head(clem@meta.data, 2)

clem@meta.data$author <- "Kazakou"
clem@meta.data$dataset <- "chimeras_human_OL"
```

# Integrate datasets
```{r cca, eval=FALSE}
# Create a list of objects
srt_list <- list(HCA, clem)
# normalize and identify variable features for each dataset independently
srt_list<- lapply(X = srt_list, FUN = function(x) {
    x <- NormalizeData(x)
    x <- FindVariableFeatures(x, selection.method = "vst", nfeatures = 2000)
})
# select features that are repeatedly variable across datasets for integration
var_features <- SelectIntegrationFeatures(object.list = srt_list)
# create anchors to integrate the datasets
anchors <- FindIntegrationAnchors(object.list = srt_list, anchor.features = var_features)   
# create an 'integrated' data assay 
ol_comb <- IntegrateData(anchorset = anchors, dims = 1:20)
```

# Run the standard workflow for visualisation & clustering
```{r integrated, eval=FALSE}
DefaultAssay(ol_comb) <- "integrated"
Idents(ol_comb) <- "dataset"
# Scale data 
all_genes <- rownames(ol_comb)
ol_comb <- ScaleData(ol_comb, features = all_genes)
# Dimentionality reduction
ol_comb <- RunPCA(ol_comb, npcs = 30, verbose = FALSE)
# Choose the mumber of PCs
ElbowPlot(ol_comb, ndims = 30) #20
# Clustering
ol_comb <- RunUMAP(ol_comb, reduction = "pca", dims = 1:20)
ol_comb <- FindNeighbors(ol_comb, reduction = "pca", dims = 1:20)
ol_comb <- FindClusters(ol_comb, resolution = 0.5)
```

# save 
```{r save, eval=FALSE}
dir.create(here("Data", "Human_R_Analysis", "Clemastine_DMSO", "Integrated_Robjs"))
dir.create(here("Data", "Human_R_Analysis", "Clemastine_DMSO", "Integrated_Robjs", "adult_HCA"))
saveRDS(ol_comb, here("Data", "Human_R_Analysis", "Clemastine_DMSO", "Integrated_Robjs", "adult_HCA", "clem_adult_HCA_ol_comb.rds"))
```

```{r}
ol_comb <- readRDS(here("Data", "Human_R_Analysis", "Clemastine_DMSO", "Integrated_Robjs", "adult_HCA", "clem_adult_HCA_ol_comb.rds"))
```

# Visualization
```{r}
DimPlot(ol_comb, pt.size = 0.6, cols = c(mycoloursP[5], "turquoise3"), group.by = "dataset") 
```

```{r fig.height=4, fig.width=10}
DimPlot(ol_comb, pt.size = 0.8, cols = c(mycoloursP[5], "turquoise3"), group.by = "dataset", split.by = "dataset") & NoLegend()
```

```{r fig.height=15, fig.width=15}
DimPlot(ol_comb, pt.size = 0.8, cols = mycoloursP, group.by = "ol_clusters_named", split.by = "dataset", label = TRUE) & NoLegend()

DimPlot(ol_comb, pt.size = 0.8, cols = mycoloursP[5:40], group.by = "Initial_Annotation", split.by = "dataset", label = TRUE) & NoLegend()
DimPlot(ol_comb, pt.size = 0.8, cols = mycoloursP[5:40], group.by = "Initial_Annotation", split.by = "dataset", label = TRUE)
```

```{r}
FeaturePlot(ol_comb, features = c("MOBP", "PDGFRA"), split.by = "dataset")
```


##### SessionInfo

<details>

<summary>

Click to expand

</summary>

```{r}
sessionInfo()
```

</details>