切片等操作也会对索引进行切片



我已经阅读了熊猫文档中的以下句子:

"Series的作用与ndarray非常相似,是大多数NumPy函数。但是,诸如切片之类的操作也将对索引进行切片">

我不知道第二句在说什么。它会切入索引,这不是既定的吗?

考虑以下代码:

import numpy as np
import pandas as pd
series = pd.Series([0,1,2,3,4,5,6])
array = series.to_numpy()
# Outputs 4, because that is element 2 of [2,3,4].
print(array[2:5][2]) 
# Outputs 2, because series[2:5] now has index [2,3,4], so the
# element with index 2 is still 2.
print(series[2:5][2]) 

由于切片系列(除非使用.iloc(使用系列的索引,而ndarray没有索引,因此系列和ndarray的行为并不总是相似的。

这也意味着,当使用系列作为输入时,打算使用ndarray输入的代码可能会以意外的方式失败,或产生意外的结果,除非代码确保它使用ndarray。

最新更新