我从数字示波器读取二进制数组,但后来我无法对二进制数组做任何事情。 在Matlab中这是一个简单的工作: 数据是数组(每个样本2个字节,二进制格式) 它可以通过该指令转换为16位整数
Data = typecast(uint8(Data),'int16'); %convert data to int16
然后使用
浮动 Data = double(Data); %covert data to double to be able to perform math
在Python中,我有一个名为dataIn
的数组,从一个乐器中读取。我找不到将二进制数组转换为16位整数数组,然后转换为实数值向量的方法。
如果有人解决了这个问题,我将不胜感激。感谢
答案 0 :(得分:3)
如果你正在使用numpy
,这很容易:
data = numpy.fromstring(bytes_data, dtype=numpy.uint16)
data = numpy.array(data, dtype=float)