[R] tried half-precision but "size 2 is unknown on this machine"

Duncan Murdoch murdoch.duncan at gmail.com
Sun Jan 4 13:12:39 CET 2015

On 04/01/2015 12:31 AM, Mike Miller wrote:
> It's an IEEE standard format:
> http://en.wikipedia.org/wiki/Half-precision_floating-point_format#IEEE_754_half-precision_binary_floating-point_format:_binary16
> This is what I see:
>> writeBin(vec , con, size=2 )
> Error in writeBin(vec, con, size = 2) : size 2 is unknown on this machine
> I'm not sure what the machine has to do with it.  It's really up to the 
> software, isn't it?

Yes, but R relies on the underlying C run-time library for a lot of
things like this.  On your platform, is there a C type corresponding to
half precision?  If so, let us know the details, and we'll possibly add
it to writeBin.

> Is there a way to get R to read/write half-precision numbers (binary16)?

If it's not supported by the C run-time library and has to be done
entirely using other types, that's the sort of thing that belongs in a
user-contributed package.  I'm not aware of one that already has it, so
you may have to write this yourself.

Duncan Murdoch

> It isn't a big deal for me because unsigned 16-bit integers are working 
> well enough, but I'd like to have an answer for people who ask why I make 
> them divide by 1000 all the time.  ;-)
> Mike
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> 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.

More information about the R-help mailing list