我通常使用IDL进行数据分析。 因此,当我打开 XDR 文件时,我使用带有 /XDR 关键字的 openr 函数。 现在我尝试将IDL代码更改为Python,但我不知道如何读取XDR文件。
例如在 IDL 中,我可以使用下面的句子打开文件
openr,1,file,/XDR
并使用
读取数据readu,1,h1,h2,h3,h4
readu,1,p_h1,p_h2,p_h3,p_h4
readu,1,p1,p2,p3,p33,p4,p5,p6,AP12
.....
但是,当我尝试用Python读取数据时
with open(file, 'rb') as f:
data = f.readlines()
u = xdrlib.Unpacker(data)
print('unpacked:', u.unpack_uint(), repr(u.unpack_string()))
这不起作用... 请大家给我一些建议好吗?
此功能现已内置于 scipy 中:
从 scipy.io 导入 readav data=readsav("文件名.xdr") 打印(数据)
数组(“数据”)应该是不言自明的,变量的名称与最初保存在 IDL 中一样。