I have log-scaled RNA-seq expression data from 13315 genes from 3 samples and a vector of cell-type markers, with 2553 genes corresponding to 8 cell types.
I followed the CellMix tutorial and created an ExpressionMix object from my 13325 x 3 expression matrix (expression.mat) using the ExpressionMix function and setting the gene and sample names using the featureNames and sampleNames functions. I then used the MarkerList function to create a MarkerList object from my named cell-type character vector.
I deconvolved the data using DSA method, where the progress message I got is:
Using ged algorithm: "DSA"
Estimating basis and mixture coefficients matrices from marker features [DSA]
Using 1140/2553 markers to estimate cell proportions:
astrocyte endothel microglia
237 142 75
myelinating.oligodendrocyte neuron newly.formed.oligodendrocyte
181 130 171
oligodendrocyte opc
1 203
Checking data scale ... NOTE [log]
Converting data to linear scale ... OK [base: 2]
Computing proportions using DSA method ... OK
Estimating basis matrix from mixture coefficients [qprog]
Not using any marker constraints
Timing:
user system elapsed
9.455 0.000 9.342
GED final wrap up ... OK
Then trying to plot the results using profplot(my ExpressionMix object, DSA fit object) throws this error:
Error in `rownames<-`(`*tmp*`, value = c("basis_1", "basis_0")) :
length of 'dimnames' [1] not equal to array extent
So my questions are:
1. Why am I getting this error
2. Is it possible to get a matrix/data.frame with the results per each sample or all samples other than the profplot? I guess that would probably be the contents of the legends in the profplot, but what do they actually mean?