首页 > 解决方案 > 如何传递错误 IndexError: single positional indexer is out-of-bounds in python

问题描述

我正在使用来自 pandas 的 ILOC 从 csv 中提取数据。当我想提取没有任何内容的列和行的文本时,它只会向我抛出这个错误:IndexError: single positional indexer is out of bounds

我完全知道为什么会出现这个错误,但我希望在错误的地方我根本不放任何东西或类似的东西。

当我尝试从空单元格中提取文本时,有什么方法可以给我一个无、一个 0 或类似的东西?

顺便说一句,这是代码:

        products = pd.read_csv("priv/products.csv")
        product_1 = products.iloc[0,1]

标签: pythonpandascsv

解决方案


看起来像语法错误。根据文档,您只能将以下内容作为输入传递给iloc

.iloc[] 主要基于整数位置(从轴的 0 到长度为 1),但也可以与布尔数组一起使用。

允许的输入是:

一个整数,例如 5。

整数列表或数组,例如 [4, 3, 0]。

具有整数的切片对象,例如 1:7。

一个布尔数组。

基于此,这可能会解决您的问题:

products = pd.read_csv("priv/products.csv")
product_1 = products.iloc[[0,1]]

推荐阅读