我已经阅读了熊猫文档中的以下句子:
"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。