FAQ 7.31

Follow the link to what you should know about floating point numbers.

On Fri, Mar 26, 2010 at 5:05 PM, JustinNabble <justinmmcgr...@hotmail.com>wrote:

>
> Can anyone explain this?
>
> I have a matrix with double components. It's taking up a lot of memory, so
> I
> want to multiply then turn it to integers. I'm pretty certain that there
> are
> only 2 decimal places, but I wanted to check by using modulo. E.g.
>
> mat = matrix(11:50/100, ncol=4,nrow=10) #Matrix with values out to the
> hundredths
> any((mat * 100)%%1!=0)
>
> But oddly enough it doesn't work. Even in this simple example the result I
> get is this:
>             [,1]         [,2] [,3] [,4]
>  [1,] 0.000000e+00 0.000000e+00    0    0
>  [2,] 0.000000e+00 0.000000e+00    0    0
>  [3,] 0.000000e+00 0.000000e+00    0    0
>  [4,] 1.776357e-15 0.000000e+00    0    0
>  [5,] 0.000000e+00 0.000000e+00    0    0
>  [6,] 0.000000e+00 0.000000e+00    0    0
>  [7,] 0.000000e+00 0.000000e+00    0    0
>  [8,] 0.000000e+00 3.552714e-15    0    0
>  [9,] 0.000000e+00 1.000000e+00    0    0
> [10,] 0.000000e+00 0.000000e+00    0    0
>
> Two non-zero values are just very small, but one is value is actually 1.
> Can
> someone explain this?
>
> If you pick just a single number you can see some odd results too.
>
> > (4.1*100)%/%1
> [1] 409
> > (4.1*10*10)%/%1
> [1] 410
>
> Shouldn't the result be 410 each time?
>
>
> I think in this case it should have returned all 0s, and I could have done
> something like
>
> newmat = as.integer(mat*100)
> dim(newmat) = dim(mat)
> rm(mat)
>
> Is there a better way to convert my double matrix to an integer matrix
> without losing precision? Or are there better ways to conserve memory? I'm
> at the limit.
>
> Thanks,
> Justin
> --
> View this message in context:
> http://n4.nabble.com/Odd-results-with-and-conserving-memory-tp1692845p1692845.html
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html<http://www.r-project.org/posting-guide.html>
> and provide commented, minimal, self-contained, reproducible code.
>



-- 
Jim Holtman
Cincinnati, OH
+1 513 646 9390

What is the problem that you are trying to solve?

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to