如何使用带切片对象的 .iloc 属性访问 pandas Series 中的一组元素?


pandas.Series.iloc 用于通过提供基于整数的位置索引值来访问 pandas series 对象中的一组元素。

.iloc 属性使用整数值来访问特定的序列元素。通常,基于位置的索引值从 0 到 length-1 表示。超出此范围,我们才能访问序列元素,否则会引发“IndexError”。但是对于切片索引器,它不会对超出范围的索引值引发“IndexError”,因为它允许超出范围的索引。

示例 1

import pandas as pd
import numpy as np

# create a sample series
s = pd.Series([1,2,3,4,5,6,7,8,9,10])

print(s)

# access number of elements by using slicing object
print("Output: ")
print(s.iloc[0:4])

解释

在下面的示例中,我们使用整数列表创建了一个 pandas series 对象,并且我们没有为此 series 对象初始化索引标签,基于整数位置的索引从 0 到 9 开始。

输出

0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10
dtype: int64

Output:
0 1
1 2
2 3
3 4
dtype: int64

我们通过向“.iloc”属性发送切片索引器对象,访问了从索引值 0 到 4 的一组 pandas.Series 元素。访问到的元素组作为另一个 series 对象返回,如上面的输出块所示。

示例 2

import pandas as pd
import numpy as np

# create a sample series
s = pd.Series([1,2,3,4,5,6,7,8,9,10])

print(s)

# access number of elements by using slicing object
print("Output: ")
print(s.iloc[-1:-5:-1])

解释

在这个例子中,我们使用了带负边界值的切片索引器。让我们看看下面的输出块来观察结果。

输出

0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10
dtype: int64

Output:
9 10
8 9
7 8
6 7
dtype: int64

负边界值 [-1:-5:-1] 应用于 iloc 属性。然后它将返回一个包含已访问的反向排序元素的新 series 对象。

更新于:2022年3月9日

476 次浏览

启动你的职业生涯

通过完成课程获得认证

开始
广告
© . All rights reserved.