【发布时间】:2014-07-15 16:00:33
【问题描述】:
要从 Python 中的套接字连接解码二进制答案,我会这样做:
import numpy as np
answer= b"\x80\x8eaS\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x80\x8eaS\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00"
datatype = [('da_0', '<i8'), ('i8_1', '<i8')]
np.frombuffer(answer, datatype)
哪个输出
>>>array([(1398902400, 1), (1398902400, 1)],
dtype=[('da_0', '<i8'), ('i8_1', '<i8')])
我一直在使用 R 中的 unpack() 函数(来自 {pack})来重现相同的结果,但直到现在都没有成功。
任何想法将不胜感激!
【问题讨论】:
-
您是否需要知道如何从套接字获取响应,或者您已经在 R 中得到响应?如果是这样,你是如何存储它的?
-
我已经有了通过 readBin() 得到的答案,并存储在“原始”类对象中。我能够解析标题(其中包含列数、行数、数据类型等信息),但至于我目前卡住的内容。
-
如果我没看错你的python,你的数字是64位整数吗?我不太了解
dtype规范。您能否在您的问题中对此进行扩展,并可能将您的一些原始数据与您认为其中的数字一起转储?
标签: python r numpy binary-data