如何使用R从二进制文件中读取浮点数据

3
我知道R语言中没有浮点数数据类型,那么我该如何从二进制文件中读取浮点数数据呢?以下是C语言中数据的结构:
typedef struct
{
    int date;
    int open;
    int high;
    int low;
    int close;
    float amount;
    int vol;
    int reservation;
} StockData; 

to.read = file(filename, "rb");
line1=readBin(to.read,  "int",8);

amount不是正确的值。我该如何将其转换为浮点数?

1个回答

6

您的C结构由5个整数值组成,后跟一个浮点数和另外2个整数。因此,您可以调用readBin三次:

 line1<-c(readBin(to.read,"int",5), 
          readBin(to.read,"double",1,size=4),
          readBin(to.read,"int",2))

如果要处理 float 值,需要将 size 参数设置为 4,因为 float 的大小为 4 字节(而不是 double 的 8 字节)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接