我正在尝试解压缩一个文件,但是在运行以下代码时我得到了这个错误:
import pickle
import pandas as pd
import numpy
unpickled_df = pd.read_pickle("./ToyData.pickle")
unpickled_df
或
import pickle
# load : get the data from file
data = pickle.load(open('ToyData.pickle', "rb"))
错误输出:
AttributeError Traceback (most recent call last)
<ipython-input-3-4f30cc427816> in <module>
1 import pickle
2 # load : get the data from file
----> 3 data = pickle.load(open('ToyData.pickle', "rb"))
4 # loads : get the data from var
5 #data = pickle.load(var)
AttributeError: Can't get attribute 'PandasIndexAdapter' on <module 'xarray.core.indexing' from 'C:\\Users\\User\\anaconda3\\lib\\site-packages\\xarray\\core\\indexing.py'>
我该怎么解决这个问题。我试图使用以下代码安装xarray、dask和其他xarray依赖项:
python -m pip install "xarray[complete]"
python -m pip install "xarray[io]" # Install optional dependencies for handling I/O
#python -m pip install "xarray[accel]" # Install optional dependencies for accelerating xarray
#python -m pip install "xarray[parallel]" # Install optional dependencies for dask arrays
#python -m pip install "xarray[viz]" # Install optional dependencies for visualization
conda install xarray-0.16.1-py_0
我使用anaconda jupyter笔记本来运行上面的脚本。我无法阅读泡菜文件。
发布于 2021-12-19 08:38:34
不能在新更新的xarray版本中使用在以前版本的xarray中创建的pickle.load文件。
这是一个已知的错误,没有解决办法,因为“长期存储不推荐酸洗”。https://github.com/pydata/xarray/discussions/5642
.hdf或.json是长期存储数据的更好选择,因为这些更有可能在未来版本中得到支持。
发布于 2022-04-27 08:35:43
我对results = torch.load("results.pth.tar")
也有同样的问题,得到了"AttributeError: Can't get attribute 'PandasIndexAdapter' on <module 'xarray.core.indexing'
“。
我通过更改计算机上的版本来解决这个问题,方法是通过保存file.pth.tar的版本。在我的例子中,该文件是用xarray版本'0.14.1‘保存的,在我的计算机上保存的是'2022.3.0’。我改变了pip install xarray==0.14.1
,它起作用了!
如果您能够找到版本"ToyData.pickle“保存与安装此版本在您的笔记本环境。否则,您可以尝试使用xarray的每一个版本(祝您好运)!
希望能帮上忙!
https://stackoverflow.com/questions/69837913
复制相似问题