如何解决 jupyter notebook 中的 pandas 问题?
Posted
技术标签:
【中文标题】如何解决 jupyter notebook 中的 pandas 问题?【英文标题】:How to resolve problems with pandas in juypter notebook? 【发布时间】:2022-01-22 07:49:48 【问题描述】:我正在学习使用 scikit learn 进行机器学习手册的第 3 章。我已经导入了 mnist 数据集,但是当我尝试获取一些图像时,它向我显示了一个错误:screenshot of the error and code! 我已经导入了我需要导入的每个库,我还将代码推送到了我的 GitHub,在那里你可以看到整个 juypter 笔记本。 link to GitHub notebook 谁能帮我解决这个问题?
我写的代码是:
some_digit = X[0]
some_digit_image = some_digit.reshape(28, 28)
plt.imshow(some_digit_image, cmap=mpl.cm.binary)
plt.axis("off")
save_fig("some_digit_plot")
plt.show()
我遇到的错误
KeyError Traceback (most recent call last)
c:\python3\lib\site-packages\pandas\core\indexes\base.py in get_loc(self, key, method, tolerance)
3360 try:
-> 3361 return self._engine.get_loc(casted_key)
3362 except KeyError as err:
c:\python3\lib\site-packages\pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()
c:\python3\lib\site-packages\pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()
pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()
pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()
KeyError: 0
The above exception was the direct cause of the following exception:
KeyError Traceback (most recent call last)
~\AppData\Local\Temp/ipykernel_5048/2618338264.py in <module>
----> 1 some_digit = X[0]
2 some_digit_image = some_digit.reshape(28, 28)
3 plt.imshow(some_digit_image, cmap=mpl.cm.binary)
4 plt.axis("off")
5
c:\python3\lib\site-packages\pandas\core\frame.py in __getitem__(self, key)
3453 if self.columns.nlevels > 1:
3454 return self._getitem_multilevel(key)
-> 3455 indexer = self.columns.get_loc(key)
3456 if is_integer(indexer):
3457 indexer = [indexer]
c:\python3\lib\site-packages\pandas\core\indexes\base.py in get_loc(self, key, method, tolerance)
3361 return self._engine.get_loc(casted_key)
3362 except KeyError as err:
-> 3363 raise KeyError(key) from err
3364
3365 if is_scalar(key) and isna(key) and not self.hasnans:
KeyError: 0
【问题讨论】:
here 是你的答案。 @shivankgtm 谢谢你,我的朋友,它正在工作 【参考方案1】:我会建议一种不同的方法来解决这个问题,当您使用 Pandas 时,这可能会对其他机器学习项目有所帮助。切片数据时,尽量使用iloc
函数。在您的情况下,我尝试使用具有相同代码的 X.iloc[0]
并且它可以工作,无需重新安装库。而且因为在预处理过程中,以及将数据拆分为测试/训练集,您的索引会混淆,因此通过标签调用一行可能是不明智的。
【讨论】:
以上是关于如何解决 jupyter notebook 中的 pandas 问题?的主要内容,如果未能解决你的问题,请参考以下文章
运行jupyter notebook出现这种情况的原因如何解决
关于Jupyter Notebook默认起始目录设置无效的解决方法
如何在 Jupyter Notebook 中使用 Python 库调试错误