Calling FlowSOM:::MapDataToCodes produces a segmentation fault
alex-l-kong opened this issue · 3 comments
alex-l-kong commented
I'm attempting to use a weights matrix to assign cluster labels to a new dataset, but when I do so, I get this error:
*** caught segfault ***
address 0x7fd2240f5ea8, cause 'memory not mapped'
Traceback:
1: FlowSOM:::MapDataToCodes(somWeights, fovPixelData[, markers])
somWeights
contains a 10x10 matrix
computed by SOM
. fovPixelData
also contains a numeric matrix
of about 1M rows.
Some more information:
fovPixelData
is initially read in as atibble
from a.feather
file usingarrow::read_feather
. It needs to be stored this way for Python data frame interoperability. The same segfaults come up whether or not I coercefovPixelData
to amatrix
or notsomWeights
is read in from an intermediate HDF5 file usingh5read
fromrhdf5
.
SofieVG commented
Hi,
I haven't encountered this issue myself, and I think it might be related to
the special file formats you are using.
Did you try to use a dummy matrix for first somWeights and then
fovPixelData to try to determine which one is causing the issue? Memory
faults could be related to issues with hdf5 as well, even though this was
generated by SOM originally.
If you do not manage to find a solution, would you be able to provide a
reproducible example?
All the best,
Sofie
…On Thu, 11 Feb 2021 at 01:35, alex-l-kong ***@***.***> wrote:
I'm attempting to use a weights matrix to assign cluster labels to a new
dataset, but when I do so, I get this error:
*** caught segfault ***
address 0x7fd2240f5ea8, cause 'memory not mapped'
Traceback:
1: FlowSOM:::MapDataToCodes(somWeights, fovPixelData[, markers])
somWeights contains a 10x10 matrix computed by SOM. fovPixelData also
contains a numeric matrix of about 1M rows.
Some more information:
- fovPixelData is initially read in as a tibble from a .feather file
using arrow::read_feather. It needs to be stored this way for Python
data frame interoperability. The same segfaults come up whether or not I
coerce fovPixelData to a matrix or not
- somWeights is read in from an intermediate HDF5 file using h5read
from rhdf5.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#45>, or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAOS724JSE5SQPCXXUQ36OTS6MQ6VANCNFSM4XN55SHA>
.
SamGG commented
Hi,
somWeights
should be a numerical matrix, with named columns. The names must be found in fovPixelData[, markers]
.
Check this with head()
, is.numeric()
and class()
on both arrays.
My two cents.
alex-l-kong commented