第一步 明确CSOmap所需的数据
- LR_pairs.txt:受体配体表,格式如图,用CSOmap自带的也行
- TPM.txt:TPM标注化的表达矩阵,格式如图,第一行得用
\t
开头
第二步 导出CSOmap所需的数据
# 0、加载程辑包
library(Seurat)
library(dplyr)
library(patchwork)
# 配置数据路径
root_path = "~/zlliu/R_data/21.07.15.IntegrateData"
# 配置结果保存路径
output_path = "~/CSOmap/data/zlliu_IntegrateData_region"
if (!file.exists(output_path)){dir.create(output_path)}
# 设置工作目录,输出文件将保存在此目录下
setwd(output_path)
getwd()
# 1、读取数据
sn = readRDS(file.path(root_path, 'hBLA_scRNAs.rds'))
# 合并对象
scRNA <- merge(sn$BA213, y=c(sn$BA04, sn$BA06, sn$BA09, sn$BA21,
sn$BA22, sn$BA37, sn$BA39, sn$BA40,
sn$BA41, sn$BA42, sn$BA44, sn$BA45))
# 保存脑区信息
scRNA[["Region"]] <- Idents(scRNA)
# 导出label.txt
labels <- scRNA[["Region"]]
labels$cells <- gsub("-", "." ,rownames(labels)) # TPM的colnames 不知为何导出时被替换了,这里也替换一下
labels$labels <- as.character(labels$Region)
rownames(labels) <- NULL
labels = labels[,c("cells", "labels")]
write.table(labels, "label.txt", row.names = F, sep = "\t", quote = F) # 不要引号
# 导出TPM.txt
tpm <- exp(scRNA[['RNA']]@data)
tpm <- tpm - 1
tpm <- tpm*100 # 1E4 to 1E6
colnames(tpm)[1] = paste0('T', colnames(tpm)[1]) # 预留\t位置
write.table(tpm, "TPM.txt", sep = "\t", quote = F) # 不要引号
import mmap, os
def mapfile(filename, *args, size=None, **kwargs):
file = open(filename, *args, **kwargs)
if size is None: size = os.path.getsize(filename)
return mmap.mmap(file.fileno(), size)
f = mapfile("data/zlliu_V1C/TPM.txt",'r+', size=10)
f[0:1] = b"\t"
f.close()
第三步 激活fat节点的matlab
- hostid中选一个, 比如
6c:92:bf:ee:06:d6
- 获得离线许可证
- 将许可证放入用户目录的License path,并修改后缀为
.lic
- 测试:
matlab -nodisplay
第四步 测试CSOmap分析
cd /home/rqzhang/CSOmap/code
matlab -nodisplay
runme('demo');
第五步 进行CSOmap分析
runme('zlliu_IntegrateData_region');
#!/bin/bash
#PBS -q batch
#PBS -V
#PBS -o /home/rqzhang/zlliu/PBS/CSOmap/CSOmap.out
#PBS -e /home/rqzhang/zlliu/PBS/CSOmap/CSOmap.err
#PBS -l nodes=1:ppn=8
#PBS -r y
cd /home/rqzhang/CSOmap/code
matlab -nodisplay -r "runme('zlliu_IntegrateData_region');exit"
echo $HOME
- 提交任务:
qsub /home/rqzhang/zlliu/PBS/CSOmap/21.09.21.CSOmap.pbs
Comments NOTHING