This is a test version of Biostars. For the public version, visit https://www.biostars.org.
How to solve error when annotating cell type with CellAssign

I want to use CellAssign to annotate scRNA-seq data, but I faced the error and I don't know how to solve it. Could anyone help me?

This is my code:

rowdata <- rownames(N_data)
coldata <- colnames(N_data)

sce <- SingleCellExperiment(assays = list(counts = as.matrix(N_data)),colData = coldata,rowData = rowdata)
sce <- computeSumFactors(sce)
sce_Size_factors <- sizeFactors(sce)

cellassign_fit <- cellassign(exprs_obj = sce[rownames(marker_new),], 
                               marker_gene_info = as.matrix(marker_new), 
                               s = sce_Size_factors, 
                               learning_rate = 1e-2, 
                               shrinkage = TRUE,
                               verbose = TRUE)

The marker_new is the gene-by-cell-type binary matrix of marker. It was constructed as the cellassign.html required.I downloaded the processed data from GEO and got the txt file of sparse matrix. Then I read the file as data frame, normalized it, and exported it as data frame with the code

write.table(as.matrix(GetAssayData(object = Normalized_data, slot = "counts")), 
        "./GSE126030/Normalized.txt", 
        sep = '\t', row.names = T, col.names = T, quote = F)

After that I read the Normalized.txt file and convert the data frame to dgCMatrix, ie N_data . Then I tried to construct the SingleCellExperiment object and fit with CellAssign but failed. I faced the error as below:

WARNING:tensorflow:@custom_gradient grad_fn has 'variables' in signature, but no ResourceVariables were used on the forward pass.
Error in py_call_impl(callable, dots$args, dots$keywords) : 
ValueError: Tried to convert 'shape' to a tensor and failed. Error: Cannot convert a partially known TensorShape (1, ?) to a Tensor.

Detailed traceback:
   File "/home/yy/.local/share/r-miniconda/envs/r-reticulate/lib/python3.7/site-packages/tensorflow/python/util/traceback_utils.py", line 153, in error_handler
   raise e.with_traceback(filtered_tb) from None
   File "/home/yy/.local/share/r-miniconda/envs/r-reticulate/lib/python3.7/site-packages/tensorflow/python/framework/op_def_library.py", line 534, in _apply_op_helper
   f"Tried to convert '{input_name}' to a tensor and failed. "
In addition: Warning message:
In cellassign(exprs_obj = sce[rownames(as.matrix(marker_new)), ],  :
Genes with no mapping counts are present. Make sure this is expected -- this can be valid input in some cases (e.g. when cell types are overspecified).
scrna-seq

Hi @yuanyang_20, could you solve the issue? I am getting a similar error with cellassign.

Thanks

0 answers

No answers yet.

Log in to answer this question.