Open MarcusLCC opened 3 years ago
Hi Marcus,
the multimappers are included probabilistically, that's why the "counts" become non-integer.
Ideally, the downstream software should import real numbers, since at some point the counts are normalized and become real numbers. It would be good to ask Seurat developers for such a feature.
In the meantime you can simply round the values to integers, e.g.
awk '{if (NR>3) $3=int($3+0.5); print}' matrix.mtx > matrix_rounded.mtx
Note, that you will also need to perform cell filtering (calling) on the rounded matrix, since at the moment multimap options only output raw matrix.
Cheers Alex
Timely thread as had similar issue today. Small adjustment to Alex's short term solution which also amends mtx header:
awk '{if (NR>3) $3=int($3+0.5); print}' matrix.mtx | sed 's/float/integer/' > matrix_rounded.mtx
Cheers, D
I brought this up in #1369 -- you appear to be able to simply change the header at the top of the file from float to real with no obvious negative impact?: change %%MatrixMarket matrix coordinate float general to %%MatrixMarket matrix coordinate real general
This way, you do not need to round the inputs.
Hi David, @bugneville
thanks for the correction. The matrix market format indeed specifies "real" not "float" label. I will fix it in the next release.
Cheers Alex
Hi Alex,
Thanks for developing such an amazing tool. I run STARsolo on the single cell RNAseq data. Since I want to have more insights into two similar genes, I added
--soloMultiMappers Uniform PropUnique EM Rescue
to see how it goes.However, when I tried to load the result into Seurat, I found out that the 'float' in the
UniqueAndMult-EM.mtx.gz
output by STARsolo might not be supported, since the error showedI tried with the new
ReadSTARsolo
function, but still get the same result.And here is the top rows in the file
UniqueAndMult-EM.mtx.gz
The
Barcodes.stat
is:And the command I use to run STARsolo is:
I wonder if the STARsolo result with
--soloMultiMappers
parameters is compatible with Seurat? Is there a way I can get through this error?Much appreciated,
Marcus