MO_NICA 2024-08-15 15:53 采纳率: 0%
浏览 7

DoubletDecon教程

使用DoubletDeconMain_Doublet_Decon时报错

运行代码

library("DoubletDecon")
location="F:/....../" 
expressionFile=paste0(location, "cntl_counts.txt")
genesFile=paste0(location, "cntl_Top50Genes.txt")
clustersFile=paste0(location, "cntl_Cluster.txt")

newFiles=Seurat_Pre_Process(expressionFile, genesFile, clustersFile)

results=Main_Doublet_Decon(rawDataFile=newFiles$newExpressionFile,
                           groupsFile=newFiles$newGroupsFile,
                           filename="cntl", 
                           location=location,
                           fullDataFile=NULL, 
                           removeCC=FALSE, 
                           species="mmu", 
                           rhop=1.1, 
                           write=TRUE, 
                           PMF=TRUE, 
                           useFull=FALSE, 
                           heatmap=FALSE,
                           centroids=TRUE,
                           num_doubs=100, 
                           only50=TRUE,
                           min_uniq=4)

报错信息

WARNING: if using ICGS2 file input, please import 'rawDataFile' and 'groupsFile' as path/location instead of an R object.
错误于if (class(groupsFile) == "character") {: 
  the condition has length > 1

初步思路

思考是否是因为groupsFile的格式不对,故查看格式

> head(newFiles$newGroupsFile)
                       [,1] [,2]
AAACCTGAGGCCCTCA.1cntl    1    1
AAACCTGAGTTTGCGT.1cntl    1    1
AAACCTGTCGTAGGTT.1cntl    1    1
AAACGGGCAGCTCGCA.1cntl    1    1
AAACGGGTCGCTGATA.1cntl    1    1
AAAGATGAGACCGGAT.1cntl    1    1

不知道为什么会多“.1cntl”这个后缀,再查看剩余两个File,发现是一致的

> newFiles$newExpressionFile[1:4,1:4]
                     row_clusters-flat AAACCTGAGGCCCTCA.1cntl
column_clusters-flat                NA                      1
Slc6a11                              1                      1
Slc4a4                               1                      5
Sparcl1                              1                      0
                     AAACCTGAGTTTGCGT.1cntl AAACCTGTCGTAGGTT.1cntl
column_clusters-flat                      1                      1
Slc6a11                                   2                      3
Slc4a4                                    0                      2
Sparcl1                                   1                      3

> newFiles$newFullExpressionFile[1:4,1:4]
                     row_clusters-flat AAACCTGAGGCCCTCA.1cntl
column_clusters-flat                NA                      1
Xkr4                                NA                      0
Sox17                               NA                      0
Mrpl15                              NA                      0
                     AAACCTGAGTTTGCGT.1cntl AAACCTGTCGTAGGTT.1cntl
column_clusters-flat                      1                      1
Xkr4                                      0                      0
Sox17                                     0                      0
Mrpl15                                    0                      0

难道需要把“.cntl”这个后缀删掉吗?还是因为其它原因所以报错?
此外还用另一个方式创建newFiles,结果还是一样的后缀以及报错结果。

> newFiles=Improved_Seurat_Pre_Process(cntl, num_genes=50, write_files=FALSE)
  • 写回答

2条回答 默认 最新

  • 一直免费一直爽 2024-08-15 15:54
    关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    根据你提供的信息,问题可能出在groupsFile的格式上。在你的代码中,groupsFile被用作一个文件名,但在DoubletDecon函数中,它应该是一个包含分组信息的数据框。你可以尝试将groupsFile转换为数据框,然后再运行DoubletDecon函数。

    首先,你需要读取groupsFile的内容,并将其转换为数据框。你可以使用以下代码:

    groups <- read.table(newFiles$newGroupsFile, header = TRUE)
    

    然后,你可以检查groups数据框的结构,确保它包含正确的分组信息。如果需要,你可以对数据框进行预处理,以便将其传递给DoubletDecon函数。

    最后,将处理后的groups数据框传递给DoubletDecon函数:

    results=Main_Doublet_Decon(rawDataFile=newFiles$newExpressionFile,
                               groupsFile=groups,
                               ...)
    

    这样,你应该可以避免报错,并正确地运行DoubletDecon函数。

    评论

报告相同问题?

问题事件

  • 创建了问题 8月15日