[R] BMP to matrix
murdoch at stats.uwo.ca
Wed Jun 28 22:36:56 CEST 2000
On Wed, 28 Jun 2000 20:18:24 +0100 (BST), you wrote in message
<Pine.GSO.4.05.10006282014180.12878-100000 at auk.stats>:
>On Wed, 28 Jun 2000, Duncan Murdoch wrote:
>> Is there a reason why R doesn't read binary files, or is it just that
>> nobody has volunteered to write functions for that yet?
>What do you read them into? Svr4 has a `raw' data type, but R has no such
>type, and S-PLUS 5.x has almost no support for it. Without, say, 8-bit,
>16-bit and 32-bit unsigned data types and some useful operators on them, it
>is hard to do much usefully at the R level. There has not been the need
>when usually one can borrow and interface tested C code.
I think a set of stream like functions would be really handy
sometimes, especially for those of us who aren't that comfortable with
the external function interface.
fopen would take a filename and some information about the open mode
(read and write would probably be enough modes) and would return a
readint8, readint16, readint32, readint64 would read a specified count
of integers into an integer vector.
readfloat4, readfloat8 would read a specified count of floating point
values into a vector of doubles.
readchar would read a specified count of characters into a single
component character vector, or take two counts, and read n characters
m times into an m component vector.
There would be similar writexxxx functions, a seek function, and an
Some issues to consider would be whether these functions should worry
about big vs. little endian storage (I'd say probably not, but there
should be other functions that can change it in memory), how errors
should be handled, whether the garbage collector should be smart
enough to automatically close an abandoned file, whether you should be
allowed to use these low level functions on things in memory or just
on files, etc.
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch
More information about the R-help