美文网首页单细胞学习
seurat对象中gene symbol的替换(自定义R包)

seurat对象中gene symbol的替换(自定义R包)

作者: myshu | 来源:发表于2021-09-06 18:06 被阅读0次

    我们在处理seurat对象的时候经常会发现R对象会自动把我们的gene symbol给替换掉,比如所有的下划线被替换成了短横线。会出现如下warning


    warning

    这样的结果就是画出来的图里面用的symbol和原始库中的不一致。
    为了解决这个问题,我写了一个R包,上传到了github上,大家可以自取,链接:
    主要是针对几种不同的R数据类型进行了处理。使用起来方便快捷。

    1、安装

    使用本地安装是最快的

    # 下载
    wget -c https://codeload.github.com/myshu2017-03-14/RenameSymbolForRObject/zip/refs/heads/master -O RenameSymbolForRObject.zip
    unzip RenameSymbolForRObject.zip
    # 安装
    R
    install.packages("RenameSymbolForRObject/", repos = NULL, type = "source")
    library(RenameRObject) # 导入没问题就是安装成功了
    

    2、使用

    library(RenameRObject)
    # 导入包之后,需要导入reference
    ref_data <- LoadReference("ref.xls")  # 注意ref.xls需要有一列gene_symbol, 并且列名必须为gene_symbol
    
    # 测试list
    gene_list <- read.table("test_data/marker_gene.xls", header = T)
    new_gene_list <- RenameReference(ref_data, gene_list$gene)
    # 测试,"unm_sa821" %in% new_gene_list
    
    # 测试s4
    Control <- readRDS(file = "test_data/cluster_pca.rds")
    Control.plot <- RenameGenesSeurat(Control, ref_data, "RNA")
    # "unm_sa821" %in% rownames(Control.plot@reductions$pca@feature.loadings)
    
    # 测试cds
    cds_data <- readRDS(file="test_data/cds_data.rds")
    new_cds_data  <- RenameGenesCellDataSet(cds_data, ref_data)
    
    # 测试matrix
    new_matrix <- RenameGenesMatrix(gene_list, ref_data, "gene", if_rownames=FALSE)
    # "unm_sa821" %in% new_matrix$gene
    
    # 测试tree
    RenameTree("test_data/heatmap.tree_row", "test_data/heatmap.tree_row.new", ref_data)
    
    

    如果有任何疑问或建议欢迎大家留言~

    相关文章

      网友评论

        本文标题:seurat对象中gene symbol的替换(自定义R包)

        本文链接:https://www.haomeiwen.com/subject/xufywltx.html