title: “Visium_Brain_deconvolution”
output: html_document

#https://github.com/rdong08/spatialDWLS_dataset/tree/main/datasets
#{r setup, include=FALSE}
#https://support.10xgenomics.com/spatial-gene-expression/datasets/1.1.0/V1_Adult_Mouse_Brain
library(Seurat) # 假设大家都会分析单细胞数据了,这个假设坏不坏,坏
library(SeuratData)
library(ggplot2)
library(cowplot)
library(dplyr)
library(Giotto)
library(patchwork)
library(tidyverse)
library(data.table)
#############################test visium
getwd()
path=“G:/silicosis/sicosis/gitto/brain_visum_deconv/”
setwd(path)

#raw_matrix<-get10Xmatrix(“raw_feature_bc_matrix/”,gene_column_index = 2)
raw_matrix<-get10Xmatrix(“G:/silicosis/sicosis/gitto/brain_visum_deconv/V1_Adult_Mouse_Brain_raw_feature_bc_matrix.tar/V1_Adult_Mouse_Brain_raw_feature_bc_matrix/raw_feature_bc_matrix/”,
gene_column_index = 2)#10x的rawdata 表达矩阵 不是filtered data!!

#raw_matrix<-get10Xmatrix(“G:/silicosis/sicosis/gitto/brain_visum_deconv/V1_Adult_Mouse_Brain_filtered_feature_bc_matrix/filtered_feature_bc_matrix/”,
# gene_column_index = 2)
head(raw_matrix)

library(data.table)
spatial_results<-fread(“G:/silicosis/sicosis/gitto/brain_visum_deconv/tissue_positions_list.csv”
)
head(spatial_results)

#library(reticulate)
#py_config()
python_path<-“C:/Users/yll/AppData/Local/r-miniconda/envs/giotto_env/python.exe”
instrs = createGiottoInstructions(python_path = python_path,
show_plot = F, return_plot = T, save_plot = T,
dpi = 600, height = 9, width = 9)

spatial_results = spatial_results[match(colnames(raw_matrix), V1)]
head(spatial_results)
colnames(spatial_results) = c(‘barcode’, ‘in_tissue’, ‘array_row’, ‘array_col’, ‘col_pxl’, ‘row_pxl’)
visium_brain <- createGiottoObject(raw_exprs = raw_matrix,
spatial_locs = spatial_results[,.(row_pxl,-col_pxl)],
instructions = instrs,
cell_metadata = spatial_results[,.(in_tissue, array_row, array_col)])
metadata = pDataDT(visium_brain)
head(metadata)

in_tissue_barcodes = metadata[in_tissue == 1]$cell_ID
visium_brain = subsetGiotto(visium_brain, cell_ids = in_tissue_barcodes)
visium_brain <- filterGiotto(gobject = visium_brain,
expression_threshold = 1,
gene_det_in_min_cells = 50,
min_det_genes_per_cell = 1000,
expression_values = c(‘raw’),
verbose = T)
########export filtered matrix
visium_brain <- normalizeGiotto(gobject = visium_brain)
visium_brain <- calculateHVG(gobject = visium_brain)
gene_metadata = fDataDT(visium_brain)
head(gene_metadata)

featgenes = gene_metadata[hvg == ‘yes’]$gene_ID
visium_brain <- runPCA(gobject = visium_brain, genes_to_use = featgenes, scale_unit = F)
signPCA(visium_brain, genes_to_use = featgenes, scale_unit = F)
visium_brain <- runUMAP(visium_brain, dimensions_to_use = 1:10)
visium_brain <- createNearestNetwork(gobject = visium_brain, dimensions_to_use = 1:10, k = 15)
visium_brain <- doLeidenCluster(gobject = visium_brain, resolution = 0.4, n_iterations = 1000)
plotUMAP(gobject = visium_brain, cell_color = ‘leiden_clus’, point_size = 2)#show_NN_network = T,
spatDimPlot(gobject = visium_brain, cell_color = ‘leiden_clus’,
dim_point_size = 1.5, spat_point_size = 1.5)
#```

##Perform deconvolution
#```{r}
getwd()
#save(visium_brain,file=“visium_brain_deconv.rds”)

load(“G:/silicosis/sicosis/gitto/brain_visum_deconv/visium_brain_deconv.rds”)
load(“sig_ct_exp.RData”)
head(Sig,5)

visium_brain <- runDWLSDeconv(visium_brain,sign_matrix = Sig, n_cell = 20)

##Deconvolution based on signature gene expression and Giotto object
#visium_brain <- runDWLSDeconv(gobject = visium_brain, sign_matrix = Sig_exp)
##The result for deconvolution is stored in visium_brain@spatial_enrichmentDWLS.Thefollowingcodesarevisualizationdeconvolutionresultsusingpieplotplotdata<−as.data.frame(visiumbrain@spatialenrichmentDWLS. The following codes are visualization deconvolution results using pie plot plot_data <- as.data.frame(visium_brain@spatial_enrichmentDWLS.Thefollowingcodesarevisualizationdeconvolutionresultsusingpieplotplotd​ata<−as.data.frame(visiumb​rain@spatiale​nrichmentDWLS)[-1]
plot_data

plot_col <- colnames(plot_data)
plot_col
plot_datax<−as.numeric(as.character(visiumbrain@spatiallocsx <- as.numeric(as.character(visium_brain@spatial_locsx<−as.numeric(as.character(visiumb​rain@spatiall​ocssdimx))
plot_datay<−as.numeric(as.character(visiumbrain@spatiallocsy <- as.numeric(as.character(visium_brain@spatial_locsy<−as.numeric(as.character(visiumb​rain@spatiall​ocssdimy))
plot_data

min_x <- min(plot_datax)plotdatax) plot_datax)plotd​ataradius <- 0.4
df <- data.frame()
str(plot_data)
plot_data[2,]

library(ggplot2)
p1 <- ggplot(df) + geom_point() + xlim(min(plot_datax)−1,max(plotdatax)-1, max(plot_datax)−1,max(plotd​atax)+1) + ylim(min(plot_datay)−1,max(plotdatay)-1, max(plot_datay)−1,max(plotd​atay)+1)
library(scatterpie)
p1 + geom_scatterpie(aes(x=x, y=y, r=radius), data=plot_data, cols=plot_col, color=NA, alpha=.8) +
geom_scatterpie_legend(plot_data$radius, x=1, y=1) + theme_classic()

Visium_Brain_deconvolution giotto解卷积相关推荐

  1. Heart_deconvolution giotto解卷积

    title: "Heart_deconvolution" #https://github.com/rdong08/spatialDWLS_dataset output: html_ ...

  2. 深度全解卷积神经网络(附论文)

    授权自AI科技大本营(ID: rgznai100) 本文共10315字,建议阅读10分钟. 本文帮你加深对卷积神经网络的理解,并对这个重要概念有一个全面的认知. [ 导读 ]深度卷积神经网络是这一波 ...

  3. 【 MATLAB 】z 变换中的卷积与解卷积

    关于卷积的博文,之前也写过几篇: [ MATLAB ]conv 函数介绍(卷积和多项式乘法) [ MATLAB ]两个序列的卷积和运算的MATLAB实现(1) [ MATLAB ]两个序列的卷积和运算 ...

  4. tensorflow学习笔记(三十二):conv2d_transpose (解卷积)

    tensorflow学习笔记(三十二):conv2d_transpose ("解卷积") deconv解卷积,实际是叫做conv_transpose, conv_transpose ...

  5. 深度学习(二十七)可视化理解卷积神经网络(反池化 pooling unpooling)

    不明白pooling,unpooling以及upsampling的区别,所以查阅了一些资料 以下为转载原文 可视化理解卷积神经网络 原文地址:http://blog.csdn.net/hjimce/a ...

  6. 深度学习元老Yann Lecun详解卷积神经网络

     深度学习元老Yann Lecun详解卷积神经网络 本文联合编译:Blake.高斐 雷锋网(公众号:雷锋网)注:卷积神经网络(Convolutional Neural Network)是一种前馈神 ...

  7. 深度学习(二十七)可视化理解卷积神经网络-ECCV 2014

    可视化理解卷积神经网络 原文地址:http://blog.csdn.net/hjimce/article/details/50544370 作者:hjimce 一.相关理论 本篇博文主要讲解2014年 ...

  8. DL之CNN:卷积神经网络算法简介之原理简介(步幅/填充/特征图)、七大层级结构(动态图详解卷积/池化+方块法理解卷积运算)、CNN各层作用及其可视化等之详细攻略

    DL之CNN:卷积神经网络算法简介之原理简介(步幅/填充/特征图).七大层级结构(动态图详解卷积/池化+方块法理解卷积运算).CNN各层作用及其可视化等之详细攻略 目录 CNN 的层级结构及相关概念 ...

  9. python cnn模型_ZfNet解卷积:可视化CNN模型( PythonCode可视化Cifar10)

    前言 由来已久,ANN方法被称为模式识别里面的"黑盒"方法,因为ANN模型不能使用明确的函数--形式化的数学公式进行表示,同时也意味着应对评价模型,面对函数寻求最优解的优化方程也不 ...

最新文章

  1. mysql 小型机_小型机宕机问题 - Oracle数据库管理 - ITPUB论坛-中国专业的IT技术社区...
  2. python赋值符号前后的空格_191012 python3关于空格打印、赋值、+=符号的小坑
  3. ubuntu11.04中如何像其他版本一样快速回到桌面
  4. 关于 ESP,EBP,EIP
  5. debian与cenos常见命令不同处
  6. uitableview 默认选中行
  7. Linux 查看某一个进程占用内存情况
  8. linux清空在用文件夹,linux清空文件夹命令问题
  9. 《RabbitMQ 实战指南》第二章 RabbitMQ 入门
  10. js数组依据下标删除元素
  11. 查看Linux下端口被哪个程序占用
  12. Linux GDB Debugging
  13. java游戏运行_用jar包运行带GUI的java游戏
  14. 计算机二级资料(公共基础知识、考纲、历年真题、VB、Java、Access、C/C++)---百度网盘下载
  15. 时间管理——番茄工作法
  16. 2G/4G通信网络基本术语
  17. 图片去底色怎么去?图片怎么去底色变透明?
  18. 纸飞机飞行曲线matlab,从小到大只会做个纸飞机?关于折纸的「高端」技巧通通告诉你...
  19. 通过Mach-O文件结构看iOS堆栈信息(函数地址与符号关联)
  20. 【Android自动化测试】Robot Framework+adb框架(四)——L2层关键字

热门文章

  1. 博通Broadcom系列网卡连接受限问题
  2. 净现值NPV(Net Present Value)
  3. OpenCV FLANN匹配器判断重复图像 思路及代码
  4. 那个服务器的联盟最多的,魔兽世界联盟最多的服务器是哪个
  5. 真实创业故事:我在15平的出租房里死磕项目!
  6. 杂事缠身总分神,不妨试试番茄钟,亲测有效
  7. 提取Insight-MVT_Annotation_Train 数据集标签xml文件中的信息
  8. [ UICompatibilityInputViewController ] WillAppear 崩溃处理
  9. 2017-18赛季NBA常规赛十大事件盘点
  10. 【人脸识别】HOG特征提取人脸识别【含Matlab源码 641期】