Load the library and the data
library(SpaGene)
load("brain10X/brain10x.rds")
Find spatially variable genes and patterns
brain10x_sv<-SpaGene(count,location)
# the most significant spt
head(brain10x_sv$spagene_res[order(brain10x_sv$spagene_res$adjp),])
## score zval pval adjp
## 3110035E14Rik 7.838590 -58.63093 0 0
## Igfbp2 9.747681 -41.03227 0 0
## Scg2 8.992579 -47.99306 0 0
## Ptma 9.705009 -41.42563 0 0
## Ngef 8.725417 -50.45585 0 0
## Dbi 7.745826 -59.48606 0 0
pattern<-FindPattern(brain10x_sv,nPattern = 15)
PlotPattern(pattern,location,pt.size = 0.5)

Top 5 genes falling into each pattern
top5<-apply(pattern$genepattern,2,function(x){names(x)[order(x,decreasing=T)][1:5]})
library(pheatmap)
pheatmap(pattern$genepattern[rownames(pattern$genepattern)%in%top5,],fontsize_row = 6)

Identify colocalized ligand-receptor pairs
load("LRpair.rds")
brain10x_lr<-SpaGene_LR(count,location,LRpair=LRpair)
# the most signficant colocalized LR pairs
head(brain10x_lr[order(brain10x_lr$adj),])
## score comm zval pval adjp
## Cck_Cckbr 28.63822 214 -32.06833 6.095309e-226 1.075212e-222
## Apoe_Sdc4 28.74954 242 -30.67785 5.620267e-207 4.957076e-204
## Pdyn_Oprk1 28.85343 201 -29.38006 4.936498e-190 2.902661e-187
## Apoe_Abca1 28.95733 210 -28.08228 8.062429e-174 3.555531e-171
## Tac1_Tacr1 29.13173 204 -25.90386 3.012735e-148 1.062893e-145
## Nptx1_Nptxr 29.15028 204 -25.67211 1.197629e-145 3.521030e-143
Plot Ligand-receptor pair Cck-Cckbr
plotLR(count,location,LRpair=c("Cck","Cckbr"),alpha.min=0.2,pt.size = 1)
