Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

Mac to Windows Data Incompatibility

by goshawk (Initiate)
on May 21, 2013 at 19:49 UTC ( #1034591=perlquestion: print w/replies, xml ) Need Help??
goshawk has asked for the wisdom of the Perl Monks concerning the following question:

Hello, all. I'm having an issue with a large and difficult-to-produce piddle matrix that I made on a Mac OS with 64 architecture(8-byte long), which I want to use in a perl program on a Windows OS with 64 architecture (4-byte long). If at all possible, I want to avoid recreating this data.

I want to load in a matrix, slice a row, then calculate the Pearson's correlation of that row against each other row using PDL::Stats::Basic corr. This works fine when I create a matrix in Windows and find the correlation in Windows, and it also works when I use the data I want to use to find the correlation on Mac, but not when I use data from the Mac OS in Windows. I've tried using PDL::IO::Storable and PDL::IO::Dumper. When I save/load the matrix using PDL::IO::Storable, I get this error:

Long integer size is not compatible at C:/Perl64/lib/ line +380, at line 6.
When I save/load the matrix using PDL::IO::Dumper, it loads fine, but the correlation no longer works. Here's a MWE:
# On Mac OS use PDL; use PDL::IO::Dumper; my $a = random(8,150); PDL::IO::Dumper::fdump($a, 'a.pldl'); # On Windows OS use PDL; use PDL::Stats::Basic; use PDL::IO::Dumper;` my $a = frestore('a.pldl'); my $b = $a->slice(':,3'); my $c = $a->corr($b); print $c->slice('(0)'), "\n";

This code returns '-1.#IND', which is Windows for nan. Am I getting caught by the different data sizes again?

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://1034591]
Approved by MidLifeXis
Front-paged by MidLifeXis
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (9)
As of 2017-08-21 15:20 GMT
Find Nodes?
    Voting Booth?
    Who is your favorite scientist and why?

    Results (324 votes). Check out past polls.