不能得到所有的行,但可以得到所有单行使用iloc?



今天我在使用pandas时遇到了一个问题。问题很简单,df.iloc[:][0]给了我这样的错误。

File "C:workspacesvenvlibsite-packagespandascoreframe.py", line 3805, in __getitem__
indexer = self.columns.get_loc(key)
File "C:workspacesvenvlibsite-packagespandascoreindexesbase.py", line 3805, in get_loc
raise KeyError(key) from err
KeyError: 0

检查哪一行不能使用iloc。我尝试了以下命令

for i in range(content_df.shape[0]):
try:
df.iloc[i][0]
except:
print(i)

这里什么都不打印!

有一件事也让我很惊讶。我想使用df.iloc[:][2:]来删除前两列。但是,它删除了第一个两行

有人知道为什么吗?提前谢谢。

df.iloc[:, 2:]删除前两列

df.iloc[2:,:]df.iloc[2:]删除前两行…

df.iloc[r:r, c:c]
^    ^
|    |
slices rows   |
slices columns
  1. 如果您想跳过前两行并保留所有列:

    df.iloc[2:, :]

  2. 如果您想跳过前两列,保留所有行:

    df.iloc[:,2:]

相关内容

  • 没有找到相关文章