Functions
Data
#read datasets
GBMSeurat_cancer_sipsic_cp = readRDS(".Data/GBMSeurat_cancer_sipsic_cp.RDS")
Warning in gzfile(file, "rb") :
cannot open compressed file '.Data/GBMSeurat_cancer_sipsic_cp.RDS', probable reason 'No such file or directory'
Error in gzfile(file, "rb") : cannot open the connection
# set clustering to 13 clusters
GBMSeurat_cancer_sipsic_cp <- FindClusters(GBMSeurat_cancer_sipsic_cp, resolution = 0.61)
Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
Number of nodes: 10000
Number of edges: 360064
Running Louvain algorithm...
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Maximum modularity in 10 random starts: 0.8640
Number of communities: 14
Elapsed time: 1 seconds
#set names
GBMSeurat_cancer@project.name = "GBM_original"
GBMSeurat_cancer_sipsic_cp@project.name = "GBM_sipsic_cp"
GBM.combined@project.name = "GBM_seurat_integration"
GBMSeurat_cancer_harmony@project.name = "GBM_harmony"
GBMSeurat_cancer_scvi@project.name = "GBM_scvi"
all_datasets = list(GBMSeurat_cancer,GBMSeurat_cancer_sipsic_cp,GBM.combined,GBMSeurat_cancer_harmony,GBMSeurat_cancer_scvi)
saveRDS(object = GBM.combined,file = "/sci/labs/yotamd/lab_share/avishai.wizel/R_projects/GBM_batch_effect/Data/GBM_seurat_integrated.RDS")
saveRDS(object = GBMSeurat_cancer_harmony,file = "/sci/labs/yotamd/lab_share/avishai.wizel/R_projects/GBM_batch_effect/Data/GBMSeurat_harmony.RDS")
saveRDS(object = GBMSeurat_cancer_scvi,file = "/sci/labs/yotamd/lab_share/avishai.wizel/R_projects/GBM_batch_effect/Data/GBMSeurat_scvi.RDS")
saveRDS(object = GBMSeurat_cancer,file = "/sci/labs/yotamd/lab_share/avishai.wizel/R_projects/GBM_batch_effect/Data/GMB_no_integration.RDS")
UMAPS
cell_types_levels <-c( "MesLike1", "MesLike2", "NPCLike1", "NPCLike2", "OPCLike","ACLike")
colors = RColorBrewer::brewer.pal(6, "Paired"); colors[5] = "orange"
all_plots= list()
for (i in seq_along(all_datasets)) {
dataset = all_datasets[[i]]
p = DimPlot(dataset, reduction = "umap",group.by = c("seurat_clusters","orig.ident","cancer_type"),ncol = 1)
p[[3]] = p[[3]] + scale_color_manual(values = colors,limits = cell_types_levels)
p[[1]]$labels$title = dataset@project.name
p[[2]]$labels$title = NULL
p[[3]]$labels$title = NULL
all_plots[[i]] = p
}
umaps_p = patchwork::wrap_plots(all_plots,ncol = 5,guides = "collect")
umaps_p

pdf(width = 19,height = 12,file = "./Figures/all/UMAPs.pdf")
umaps_p
dev.off()
null device
1
Stacked barplots

pdf(width = 10,height = 8,file = "./Figures/all/barplots.pdf")
barplots_p
dev.off()
null device
1
LS0tCnRpdGxlOiAnYHIgcnN0dWRpb2FwaTo6Z2V0U291cmNlRWRpdG9yQ29udGV4dCgpJHBhdGggJT4lIGJhc2VuYW1lKCkgJT4lIGdzdWIocGF0dGVybiA9ICJcXC5SbWQiLHJlcGxhY2VtZW50ID0gIiIpYCcgCmF1dGhvcjogIkF2aXNoYWkgV2l6ZWwiCmRhdGU6ICdgciBTeXMudGltZSgpYCcKb3V0cHV0OiAKICBodG1sX25vdGVib29rOiAKICAgIGNvZGVfZm9sZGluZzogaGlkZQogICAgdG9jOiB5ZXMKICAgIHRvY19jb2xsYXBzZTogeWVzCiAgICB0b2NfZmxvYXQ6IAogICAgICBjb2xsYXBzZWQ6IEZBTFNFCiAgICBudW1iZXJfc2VjdGlvbnM6IHRydWUKICAgIHRvY19kZXB0aDogMQotLS0KCgoKIyBGdW5jdGlvbnMKCmBgYHtyIHdhcm5pbmc9RkFMU0V9CmBgYAoKIyBEYXRhCgoKYGBge3J9CiNyZWFkIGRhdGFzZXRzCkdCTVNldXJhdF9jYW5jZXJfc2lwc2ljX2NwID0gcmVhZFJEUygiLi9EYXRhL0dCTVNldXJhdF9jYW5jZXJfc2lwc2ljX2NwLlJEUyIpCkdCTS5jb21iaW5lZCA9IHJlYWRSRFMoIi4vRGF0YS9HQk1fc2V1cmF0X2ludGVncmF0ZWQuUkRTIikKR0JNU2V1cmF0X2NhbmNlcl9oYXJtb255ID0gcmVhZFJEUygiLi9EYXRhL0dCTVNldXJhdF9oYXJtb255LlJEUyIpCkdCTVNldXJhdF9jYW5jZXIgPSByZWFkUkRTKCIuL0RhdGEvR01CX25vX2ludGVncmF0aW9uLlJEUyIpCkdCTVNldXJhdF9jYW5jZXJfc2N2aSA9IHJlYWRSRFMoIi4vRGF0YS9HQk1TZXVyYXRfc2N2aS5SRFMiKQpgYGAKCmBgYHtyfQojIHNldCBjbHVzdGVyaW5nIHRvIDEzIGNsdXN0ZXJzCkdCTVNldXJhdF9jYW5jZXJfc2lwc2ljX2NwIDwtIEZpbmRDbHVzdGVycyhHQk1TZXVyYXRfY2FuY2VyX3NpcHNpY19jcCwgcmVzb2x1dGlvbiA9IDAuNjEpCkdCTS5jb21iaW5lZCA8LSBGaW5kQ2x1c3RlcnMoR0JNLmNvbWJpbmVkLCByZXNvbHV0aW9uID0gMC44KQpHQk1TZXVyYXRfY2FuY2VyX2hhcm1vbnkgPC0gRmluZENsdXN0ZXJzKEdCTVNldXJhdF9jYW5jZXJfaGFybW9ueSwgcmVzb2x1dGlvbiA9IDAuNSkKR0JNU2V1cmF0X2NhbmNlciAgPC0gIEZpbmRDbHVzdGVycyhHQk1TZXVyYXRfY2FuY2VyLHJlc29sdXRpb24gID0gMC41KQpHQk1TZXVyYXRfY2FuY2VyX3NjdmkgIDwtIEZpbmRDbHVzdGVycyhHQk1TZXVyYXRfY2FuY2VyX3NjdmkscmVzb2x1dGlvbiAgPSAwLjcpCgpgYGAKCgpgYGB7cn0KI3NldCBuYW1lcwpHQk1TZXVyYXRfY2FuY2VyQHByb2plY3QubmFtZSA9ICJHQk1fb3JpZ2luYWwiCkdCTVNldXJhdF9jYW5jZXJfc2lwc2ljX2NwQHByb2plY3QubmFtZSA9ICJHQk1fc2lwc2ljX2NwIgpHQk0uY29tYmluZWRAcHJvamVjdC5uYW1lID0gIkdCTV9zZXVyYXRfaW50ZWdyYXRpb24iCkdCTVNldXJhdF9jYW5jZXJfaGFybW9ueUBwcm9qZWN0Lm5hbWUgPSAiR0JNX2hhcm1vbnkiCkdCTVNldXJhdF9jYW5jZXJfc2N2aUBwcm9qZWN0Lm5hbWUgPSAiR0JNX3NjdmkiCmBgYAoKYGBge3J9CmFsbF9kYXRhc2V0cyA9IGxpc3QoR0JNU2V1cmF0X2NhbmNlcixHQk1TZXVyYXRfY2FuY2VyX3NpcHNpY19jcCxHQk0uY29tYmluZWQsR0JNU2V1cmF0X2NhbmNlcl9oYXJtb255LEdCTVNldXJhdF9jYW5jZXJfc2N2aSkKYGBgCgoKYGBge3J9CnNhdmVSRFMob2JqZWN0ID0gR0JNLmNvbWJpbmVkLGZpbGUgPSAiL3NjaS9sYWJzL3lvdGFtZC9sYWJfc2hhcmUvYXZpc2hhaS53aXplbC9SX3Byb2plY3RzL0dCTV9iYXRjaF9lZmZlY3QvRGF0YS9HQk1fc2V1cmF0X2ludGVncmF0ZWQuUkRTIikKc2F2ZVJEUyhvYmplY3QgPSBHQk1TZXVyYXRfY2FuY2VyX2hhcm1vbnksZmlsZSA9ICIvc2NpL2xhYnMveW90YW1kL2xhYl9zaGFyZS9hdmlzaGFpLndpemVsL1JfcHJvamVjdHMvR0JNX2JhdGNoX2VmZmVjdC9EYXRhL0dCTVNldXJhdF9oYXJtb255LlJEUyIpCnNhdmVSRFMob2JqZWN0ID0gR0JNU2V1cmF0X2NhbmNlcl9zY3ZpLGZpbGUgPSAiL3NjaS9sYWJzL3lvdGFtZC9sYWJfc2hhcmUvYXZpc2hhaS53aXplbC9SX3Byb2plY3RzL0dCTV9iYXRjaF9lZmZlY3QvRGF0YS9HQk1TZXVyYXRfc2N2aS5SRFMiKQpzYXZlUkRTKG9iamVjdCA9IEdCTVNldXJhdF9jYW5jZXIsZmlsZSA9ICIvc2NpL2xhYnMveW90YW1kL2xhYl9zaGFyZS9hdmlzaGFpLndpemVsL1JfcHJvamVjdHMvR0JNX2JhdGNoX2VmZmVjdC9EYXRhL0dNQl9ub19pbnRlZ3JhdGlvbi5SRFMiKQoKYGBgCgojIFVNQVBTIHsudGFic2V0fQpgYGB7ciBmaWcuaGVpZ2h0PTEyLCBmaWcud2lkdGg9MTksIHJlc3VsdHM9J2FzaXMnfQpjZWxsX3R5cGVzX2xldmVscyA8LWMoICJNZXNMaWtlMSIsICJNZXNMaWtlMiIsICJOUENMaWtlMSIsICJOUENMaWtlMiIsICJPUENMaWtlIiwiQUNMaWtlIikKY29sb3JzID0gUkNvbG9yQnJld2VyOjpicmV3ZXIucGFsKDYsICJQYWlyZWQiKTsgY29sb3JzWzVdID0gIm9yYW5nZSIKCmFsbF9wbG90cz0gbGlzdCgpCgpmb3IgKGkgaW4gc2VxX2Fsb25nKGFsbF9kYXRhc2V0cykpIHsKICBkYXRhc2V0ID0gYWxsX2RhdGFzZXRzW1tpXV0KICBwID0gRGltUGxvdChkYXRhc2V0LCByZWR1Y3Rpb24gPSAidW1hcCIsZ3JvdXAuYnkgPSBjKCJzZXVyYXRfY2x1c3RlcnMiLCJvcmlnLmlkZW50IiwiY2FuY2VyX3R5cGUiKSxuY29sID0gMSkKICBwW1szXV0gPSBwW1szXV0gKyBzY2FsZV9jb2xvcl9tYW51YWwodmFsdWVzID0gY29sb3JzLGxpbWl0cyA9IGNlbGxfdHlwZXNfbGV2ZWxzKSAKICBwW1sxXV0kbGFiZWxzJHRpdGxlICA9IGRhdGFzZXRAcHJvamVjdC5uYW1lCiAgcFtbMl1dJGxhYmVscyR0aXRsZSA9IE5VTEwKICBwW1szXV0kbGFiZWxzJHRpdGxlICA9IE5VTEwKICBhbGxfcGxvdHNbW2ldXSA9IHAKICAKfQoKdW1hcHNfcCA9IHBhdGNod29yazo6d3JhcF9wbG90cyhhbGxfcGxvdHMsbmNvbCA9IDUsZ3VpZGVzID0gImNvbGxlY3QiKQp1bWFwc19wCmBgYApgYGB7cn0KcGRmKHdpZHRoID0gMTksaGVpZ2h0ID0gMTIsZmlsZSA9ICIuL0ZpZ3VyZXMvYWxsL1VNQVBzLnBkZiIpCnVtYXBzX3AKZGV2Lm9mZigpCmBgYAoKIyBTdGFja2VkIGJhcnBsb3RzCmBgYHtyIGZpZy5oZWlnaHQ9OCwgZmlnLndpZHRoPTEwLCByZXN1bHRzPSdhc2lzJ30KYWxsX3Bsb3RzPSBsaXN0KCkKCmZvciAoaSBpbiBzZXFfYWxvbmcoYWxsX2RhdGFzZXRzKSkgewogIGRhdGFzZXQgPSBhbGxfZGF0YXNldHNbW2ldXQogIGNsdXN0ZXJzX2FuZF9zY29yZXMgPSBGZXRjaERhdGEob2JqZWN0ID0gZGF0YXNldCx2YXJzPSBjKCJjYW5jZXJfdHlwZSIsInNldXJhdF9jbHVzdGVycyIpKSAlPiUgIGdyb3VwX2J5KHNldXJhdF9jbHVzdGVycyxjYW5jZXJfdHlwZSkgJT4lCiAgICBzdW1tYXJpc2Uobl9jZWxscyA9IG4oKSwgLmdyb3VwcyA9ICJkcm9wX2xhc3QiKSU+JSBtdXRhdGUocGVyID0gIDEwMCAqbl9jZWxscy9zdW0obl9jZWxscykpCiAgCiAgaW50ZWdyYXRpb25fc2NvcmUgPSBGZXRjaERhdGEob2JqZWN0ID0gZGF0YXNldCx2YXJzPSBjKCJjYW5jZXJfdHlwZSIsInNldXJhdF9jbHVzdGVycyIpKSU+JQogICAgbXV0YXRlKGNhbmNlcl90eXBlID0gY2FuY2VyX3R5cGUgJT4lIGdzdWIocGF0dGVybiA9Ik1lc0xpa2UxfE1lc0xpa2UyIixyZXBsYWNlbWVudCA9ICJNZXNMaWtlIikpJT4lICAjdW5pb24gc3VidHlwZXMKICAgIG11dGF0ZShjYW5jZXJfdHlwZSA9IGNhbmNlcl90eXBlICU+JSBnc3ViKHBhdHRlcm4gPSAiTlBDTGlrZTF8TlBDTGlrZTIiLHJlcGxhY2VtZW50ID0gIk5QQ0xpa2UiKSkgJT4lICN1bmlvbiBzdWJ0eXBlcwogICAgZ3JvdXBfYnkoc2V1cmF0X2NsdXN0ZXJzLGNhbmNlcl90eXBlKSAlPiUgCiAgICBzdW1tYXJpc2Uobl9jZWxscyA9IG4oKSwgLmdyb3VwcyA9ICJkcm9wX2xhc3QiKSU+JSAjY291bnQgYnkgY2x1c3RlcgogICAgbXV0YXRlKHBlciA9ICAxMDAgKm5fY2VsbHMvc3VtKG5fY2VsbHMpKSAlPiUgICAjY2FsYyBwZXJjZW50YWdlcwogICAgZ3JvdXBfYnkoc2V1cmF0X2NsdXN0ZXJzKSAlPiUgI2ZvciBlYWNoIGNsdXN0ZXIKICAgIGZpbHRlcihuX2NlbGxzID09IG1heChuX2NlbGxzKSkgJT4lICNnZXQgbWF4IGNlbGwgdHlwZQogICAgcHVsbChwZXIpICU+JSBtZWFuKCkgJT4lIHJvdW5kKGRpZ2l0cyA9IDIpCiAgCiAgCiAgY2VsbF90eXBlc19sZXZlbHMgPC1jKCAiTWVzTGlrZTEiLCAiTWVzTGlrZTIiLCAiTlBDTGlrZTEiLCAiTlBDTGlrZTIiLCAiT1BDTGlrZSIsIkFDTGlrZSIpCiAgY29sb3JzID0gUkNvbG9yQnJld2VyOjpicmV3ZXIucGFsKDYsICJQYWlyZWQiKTsgY29sb3JzWzVdID0gIm9yYW5nZSIKICBwMiA9IGdncGxvdChkYXRhPWNsdXN0ZXJzX2FuZF9zY29yZXMsIGFlcyh4PXNldXJhdF9jbHVzdGVycywgeT1wZXIsIGZpbGw9ZmFjdG9yKGNhbmNlcl90eXBlLCBsZXZlbHMgPSBjZWxsX3R5cGVzX2xldmVscykpKSArCiAgICBnZW9tX2JhcihzdGF0PSJpZGVudGl0eSIpK3RoZW1lX21pbmltYWwoKSArIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcyA9IGNvbG9ycyxuYW1lICA9ICJDYW5jZXIgdHlwZSIpKyAKICAgIGxhYnModGl0bGUgPSBkYXRhc2V0QHByb2plY3QubmFtZSxzdWJ0aXRsZSA9ICJpbnRlZ3JhdGlvbiBzY29yZT0iICVzKyUgaW50ZWdyYXRpb25fc2NvcmUpKwogICAgeWxhYigiJSBmcm9tIGNsdXN0ZXIiKQogIAogIAogIGFsbF9wbG90c1tbaV1dID0gcDIKfQoKYmFycGxvdHNfcCA9IHBhdGNod29yazo6d3JhcF9wbG90cyhhbGxfcGxvdHMsbmNvbCA9IDIsbnJvdyA9IDMsZ3VpZGVzID0gImNvbGxlY3QiKQpiYXJwbG90c19wCmBgYAoKYGBge3J9CnBkZih3aWR0aCA9IDEwLGhlaWdodCA9IDgsZmlsZSA9ICIuL0ZpZ3VyZXMvYWxsL2JhcnBsb3RzLnBkZiIpCmJhcnBsb3RzX3AKZGV2Lm9mZigpCmBgYAoKPHNjcmlwdCBzcmM9Imh0dHBzOi8vaHlwb3RoZXMuaXMvZW1iZWQuanMiIGFzeW5jPjwvc2NyaXB0PgoK