[R] Matrix *package*, CHOLMOD error: problem too large
Martin Maechler
maechler at stat.math.ethz.ch
Sat Jun 23 00:36:43 CEST 2007
[Jose, if you call the Matrix *package* "library" once more, ...
GRRRRR! ..]
>>>>> "DM" == Duncan Murdoch <murdoch at stats.uwo.ca>
>>>>> on Fri, 22 Jun 2007 14:04:03 -0400 writes:
DM> On 6/22/2007 1:26 PM, Jose Quesada wrote:
>> I have a pretty large sparse matrix of integers:
>>> dim(tasa)
>> [1] 91650 37651
>>
>> I need to add one to it in order to take logs, but I'm
>> getting the following error:
>>
>>> tasa = log(tasa + 1)
>> CHOLMOD error: problem too large Error in
>> asMethod(object) : Cholmod error `problem too large'
>>
>> I have 2 Gb of RAM, and the current workspace is barely
>> 300mb. Is there any workaround to this? Anyone has any
>> experience with this error?
>>
DM> If tasa is sparse, then tasa+1 will not be sparse, so
DM> that's likely your problem.
[of course]
DM> You might have better luck with
DM> log1p(tasa)
{very good point, thank you, Duncan!}
DM> if the authors of the Matrix package have written a
DM> method for log1p(); if not, you'll probably have to do
DM> it yourself.
They have not yet.
Note however that this - and expm1() - would automagically work
for sparse matrices if these two functions were part of the
"Math" S4 group generic.
I'd say that there's only historical reason for them *not* to be
part of "Math", and I am likely going to propose to change this
....
Martin Maechler
DM> Duncan Murdoch
More information about the R-help
mailing list