我创建了一个 pandas 数据框,通过以下方式从 scipy.io 读取它(file.sav 是在另一台机器上创建的 IDL 结构。scipy.io 创建了一个标准的 python 字典):
from scipy import io
import pandas as p
import numpy as np
tmp=io.readsav('file.sav', python_dict = True)
df=pd.DataFrame(tmp,index=tmp['shots'].astype('int32'))
数据框包含一组值(来自file.sav)和作为索引的一系列整数,形式为 19999,20000,30000 等。现在我想取这些索引的一个子集,说
df.loc[[19999,20000]]
由于某些原因,我收到表格错误
raise ValueError('Cannot index with multidimensional key')
加上其他和最后
ValueError: Big-endian buffer not supported on little-endian compiler
但是我已经检查过我正在使用的机器和创建 file.sav 的机器都是小端的。所以我不认为这是问题所在。