1. 索引取值

  1. data = pd.Series([0.25, 0.5, 1], index=['a', 'b', 'c'])
  2. print(data)
  3. print('索引,也可看作是字典的键值对')
  4. print(data['b'])
  5. print('隐式索引')
  6. print(data[1])
  7. print('通过增加新的索引值扩展Series')
  8. data['d'] = 1.5
  9. print(data)
  10. a 0.25
  11. b 0.50
  12. c 1.00
  13. dtype: float64
  14. 索引,也可看作是字典的键值对
  15. 0.5
  16. 隐式索引
  17. 0.5
  18. 通过增加新的索引值扩展Series
  19. a 0.25
  20. b 0.50
  21. c 1.00
  22. d 1.50
  23. dtype: float64

习惯使用的取值方式和索引用法容易造成混乱。
取值是显式的,切片是隐式索引。

  1. data = pd.Series([0.25, 0.5, 1], index=list(range(1, 4)))
  2. print(data)
  3. print('取值是显式的')
  4. print(data[1])
  5. print('切片是隐式索引')
  6. print(data[1: 3])
  7. 1 0.25
  8. 2 0.50
  9. 3 1.00
  10. dtype: float64
  11. 取值是显式的
  12. 0.25
  13. 切片是隐式索引
  14. 2 0.5
  15. 3 1.0
  16. dtype: float64

2. loc取值与切片

loc属性,取值和切片都是显式的,左右均闭区间

  1. data = pd.Series(['a', 'b', 'c'], index=[1, 3, 5])
  2. print(data)
  3. print(data.loc[1])
  4. print(data.loc[3: 4])
  5. 1 a
  6. 3 b
  7. 5 c
  8. dtype: object
  9. a
  10. 3 b
  11. dtype: object

3. iloc取值与切片

iloc属性,切片和取值都是隐式的,左闭右开。

  1. data = pd.Series(['a', 'b', 'c'], index=[1, 3, 6])
  2. print(data)
  3. print(data.iloc[1])
  4. print(data.iloc[1: 3])
  5. 1 a
  6. 3 b
  7. 6 c
  8. dtype: object
  9. b
  10. 3 b
  11. 6 c
  12. dtype: object

4. loc与iloc验证

  1. data = pd.Series([0, 0.25, 0.5, 1], index=['a', 'b', 'c', 'd'])
  2. print(data)
  3. print(data.loc['a': 'c'])
  4. print(data.iloc[: 2])
  5. a 0.00
  6. b 0.25
  7. c 0.50
  8. d 1.00
  9. dtype: float64
  10. a 0.00
  11. b 0.25
  12. c 0.50
  13. dtype: float64
  14. a 0.00
  15. b 0.25
  16. dtype: float64