前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Series(二):Series的元素获取方式

Series(二):Series的元素获取方式

作者头像
朱小五
发布2020-03-19 09:29:53
8.6K0
发布2020-03-19 09:29:53
举报
文章被收录于专栏:凹凸玩数据凹凸玩数据

今天给大家介绍Series的元素获取方式。

关于切片和索引获取Series中的元素,可以参考我的另外一篇文章,对比学习效果会更好:《手撕numpy(三):切片和索引详解》

1)使用head()和tail()函数获取Series中的元素

代码语言:javascript
复制
x = pd.Series(np.arange(1,10),index=list("abcdefghij"))
# shuffle()函数:用于打乱元素的排列顺序;
np.random.shuttle()
display(x)

display(x.head())

① 使用head()获取前5条数据

② 使用tail()获取后5条数据

③ head()和tail()传入参数,获取任意条数据

用法很简单,只需要往head()和tail()中传入一个整数值,就可以获取任意前n行,或者任意后n行。

注意:这两个函数在使用python做数据分析的时候,会经常用到,因此要好好记忆一下。

2)使用切片获取Series中的元素

代码语言:javascript
复制
x = pd.Series(np.arange(1,11),index=list("abcdefghij"))
display(x)

display(x[::-1])
display(x[-4:-8:-1])
display(x[4:8:1])

结果如下:

3)使用索引获取Series中的元素

① 普通索引

Series与ndarray数组都可以通过索引访问元素,不同点在于:

  • ndarray就是类似与list的索引,支持负数索引。
  • Series是类似字典key:value形式的索引,不支持负数索引。

操作如下:

代码语言:javascript
复制
a = np.array([1, 2, 3])
display(a[-1])

s = pd.Series([1, 2, 3], index=[0, 1, 2])
display(s)
display(s[-1])

结果如下:

② 通过“整数数组”进行索引

操作如下:

代码语言:javascript
复制
x = pd.Series([1,3,5,7,9],index=[1,2,3,4,5])
display(x)
display(x[[1,3,5]])

y = pd.Series([1,3,5,7,9],index=list("abcde"))
display(y)

display(y[[0,2,4]])
display(y[["a","c","e"]])

结果如下:

③ 通过“布尔数组”进行索引(这个用的最多)

代码语言:javascript
复制
x = pd.Series(np.random.randint(3,10,5),index=list("abcde"))
display(x)

display(x > 5)
display(x[x>5])
display(x[[True,True,False,True,False]])

结果如下:

4)通过loc和iloc获取Series中的元素

(推荐使用这种方式)

Series的索引分为位置索引和标签索引。loc表示的是标签索引,iloc表示的是位置索引。

① 访问一个元素

代码语言:javascript
复制
x = pd.Series([10,23,31,16],index=list("abcd"))
display(x)

# 使用标签索引
display(x.loc["a"])
# 使用位置索引
display(x.iloc[0])

结果如下:

② 访问多个元素

代码语言:javascript
复制
x = pd.Series([10,23,31,16],index=list("abcd"))
display(x)

# 使用标签数组
display(x.loc[["a","d"]])
# 使用位置数组
display(x.iloc[[1,3]])

结果如下:

注意:索引返回的都是原始数组的拷贝。上述第3)4)都是索引方式获取数组元素,因此返回的都是原始数组的拷贝。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 凹凸数据 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1)使用head()和tail()函数获取Series中的元素
  • 2)使用切片获取Series中的元素
  • 3)使用索引获取Series中的元素
  • 4)通过loc和iloc获取Series中的元素
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档