02.用于数据科学的 Python 基础知识之pandas(上)

Series的索引和切片

因为Series只有一列,因此一般只对行进行操作,索引分为隐式索引和显示索引,因此不同的方式操作起来也不一样。

Series隐式索引的操作

lst = [1,3,5,6,10,23]
s = pd.Series(lst)

s[0] # 取某一行,也可以说取某个元素

输出值为:

1


s[[0,1]] # 取多行时,里面则是列表,可存储多个

输出值为:

0    1
1    3
dtype: int64

s[0:2] # 切片操作,取0-2行,但是只能取到0和1行,顾头不顾尾

输出值为:

0    1
1    3
dtype: int64

s.iloc[0:4] # 使用iloc来专门对隐式索引进行相关操作,也是只能取到0和1行,顾头不顾尾

输出值为:

0    1
1    3
2    5
3    6
dtype: int64

s.iloc[[0,4]] # 使用iloc来专门对隐式索引进行相关操作,跟s[[0,1]]一样,指第0行和第4行的值

输出值为:

0     1
4    10
dtype: int64

Series显式索引的操作

lst = [1,3,5,6,10,23]
s1 = pd.Series(lst,index=["A","B","C","D","E","F"])
A     1
B     3
C     5
D     6
E    10
F    23
dtype: int64

s1["A"] # 取某行或单个元素

输出值为:

1


s1[["A","B","F"]] # 取多行,可以是连续的,也可以是不连续的,顺序随意

输出值为:

A     1
B     3
F    23
dtype: int64

s1["A":"E"] # 切片,取A行和B行,这里的B行是可以取到的,头和尾都可以取到

输出结果为:

A     1
B     3
C     5
D     6
E    10
dtype: int64

s1.loc["A":"D"] # 使用loc来专门对显式索引进行相关操作,这里的B行也可以取到

输出结果为:

A    1
B    3
C    5
D    6
dtype: int64

s1.loc[["A","B", "E", "D"]] # 使用loc来专门对显式索引进行相关操作,顺序随意

输出结果为:

A     1
B     3
E    10
D     6
dtype: int64

总结

  1. Series的索引和切片只针对行而言,因为它只有一列
  2. loc是对于显式索引的相关操作(对于标签的处理),iloc是针对隐式索引的相关操作(对于整数的处理)。
  3. 我们发现其实s[0:2] 与 s.iloc[0:2]没有太大差别(显式索引也是一样),这并不说明iloc就没有用,个人觉得它更有意义的是在DataFrame当中使用,后面会讲到。

原创文章,作者:朋远方,如若转载,请注明出处:https://caovan.com/02-yongyushujukexuede-python-jichuzhishizhipandas/.html

(0)
打赏 微信扫一扫 微信扫一扫
朋远方的头像朋远方
上一篇 2022年11月10日 下午5:03
下一篇 2022年11月12日 下午12:49

相关推荐

发表回复

登录后才能评论