-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathget_anchors.R
49 lines (40 loc) · 1.59 KB
/
get_anchors.R
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
library(tidyverse)
library(dplyr)
library(Seurat)
library(SeuratData)
library(SeuratDisk)
library(scater)
library(limma)
library(DropletUtils)
library(data.table)
library(singleCellTK)
library(org.Mm.eg.db)
library(scMerge)
library(scran)
#Load seurat object
thymus_mouse_datasets_seurat <-
readRDS(file = "thymus_mouse_datasets_seurat_corrected.rds")
#Generate Seurat anchors to use in MAT2 integration
##Split into a list by study
mouse_thymus_list <-
SplitObject(thymus_mouse_datasets_seurat , split.by = "batch")
##Find variable features
mouse_thymus_list_with_features <- lapply(mouse_thymus_list,
FindVariableFeatures,
selection.method = "vst",
nfeatures = 2000,
verbose = FALSE)
features <-
SelectIntegrationFeatures(object.list = mouse_thymus_list_with_features)
mouse_thymus_anchors <-
FindIntegrationAnchors(object.list = mouse_thymus_list_with_features,
anchor.features = features)
saveRDS(mouse_thymus_anchors, "mouse_thymus_anchors_corrected.rds")
mouse_thymus_anchors_data <- Seurat::AnnotateAnchors(mouse_thymus_anchors)
#write.csv(mouse_thymus_anchors_data, "mouse_thymus_anchors_corrected_colnames.csv")
mouse_anchors <- mouse_thymus_anchors_data %>%
mutate_all(~gsub("cell", "", .)) %>%
subset(select = c("cell1", "cell2", "anchor.score")) %>%
dplyr::rename(score = anchor.score) %>%
mutate_if(is.character,as.numeric)
write.csv(mouse_anchors, "mouse_thymus_anchors_corrected_colnames.csv")