1. 索引取值
data = pd.Series([0.25, 0.5, 1], index=['a', 'b', 'c'])print(data)print('索引,也可看作是字典的键值对')print(data['b'])print('隐式索引')print(data[1])print('通过增加新的索引值扩展Series')data['d'] = 1.5print(data)a 0.25b 0.50c 1.00dtype: float64索引,也可看作是字典的键值对0.5隐式索引0.5通过增加新的索引值扩展Seriesa 0.25b 0.50c 1.00d 1.50dtype: float64
习惯使用的取值方式和索引用法容易造成混乱。
取值是显式的,切片是隐式索引。
data = pd.Series([0.25, 0.5, 1], index=list(range(1, 4)))print(data)print('取值是显式的')print(data[1])print('切片是隐式索引')print(data[1: 3])1 0.252 0.503 1.00dtype: float64取值是显式的0.25切片是隐式索引2 0.53 1.0dtype: float64
2. loc取值与切片
loc属性,取值和切片都是显式的,左右均闭区间
data = pd.Series(['a', 'b', 'c'], index=[1, 3, 5])print(data)print(data.loc[1])print(data.loc[3: 4])1 a3 b5 cdtype: objecta3 bdtype: object
3. iloc取值与切片
iloc属性,切片和取值都是隐式的,左闭右开。
data = pd.Series(['a', 'b', 'c'], index=[1, 3, 6])print(data)print(data.iloc[1])print(data.iloc[1: 3])1 a3 b6 cdtype: objectb3 b6 cdtype: object
4. loc与iloc验证
data = pd.Series([0, 0.25, 0.5, 1], index=['a', 'b', 'c', 'd'])print(data)print(data.loc['a': 'c'])print(data.iloc[: 2])a 0.00b 0.25c 0.50d 1.00dtype: float64a 0.00b 0.25c 0.50dtype: float64a 0.00b 0.25dtype: float64
