On Tue, 22 Apr 2014, William Dunlap wrote:

For me that other software would probably be Octave. I'm interested if anyone here has read in these files using Octave, or a C program or anything else.

I typed 'octave read binary file' into google.com and the first hit was the Octave help file for its fread function. In C fread is also a good way to go (C and Octave have different argument lists for their fread functions.) In the Linux shell you can use the od command.

Thanks! My mistake was that I was searching using "R" and "writebin" in my search string which limited my results too severely. I actually figured that out before your message came in and felt a little embarrassed, and that has only gotten worse. But you did give me something cool that I didn't know:


% R --quiet
con <- gzcon(file("/tmp/file.gz", "wb")) # your gzcon("/tmp/file.gz", "wb") 
resulted in an error message
writeBin(c(121:130,129:121), con, size=2)
close(con)
q("no")
% zcat /tmp/file.gz | od --format d2
0000000    121    122    123    124    125    126    127    128
0000020    129    130    129    128    127    126    125    124
0000040    123    122    121
0000046


That's really neat. With my data, I can do this to return the original matrix:

zcat file.gz | od -vtd2 -w15392 -An > matrix.txt

It is quite fast, too:

$ time -p zcat D1.gz | od -vtd2 -w15392 -An >/dev/null
real 6.08
user 6.86
sys 0.08


If I had realized how little my writeBin() output files had to do with R, I probably wouldn't have posted here, but I'm glad I did.


FYI -- I was able to use fread() in Octave on the uncompressed version of the file, but it isn't handling the zipped version as expected. That's an Octave problem, so I'll deal with them on that one. I might not have zlib compiled in, or maybe they still have a bug in that function.

Thanks!

Mike

______________________________________________
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