前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Pandas库的基础使用系列---获取行和列

Pandas库的基础使用系列---获取行和列

原创
作者头像
IT蜗壳-Tango
发布2023-12-12 23:02:17
3140
发布2023-12-12 23:02:17
举报
文章被收录于专栏:Pandas基础实践Pandas基础实践

前言

我们上篇文章简单的介绍了如何获取行和列的数据,今天我们一起来看看两个如何结合起来用。

获取指定行和指定列的数据

image-20231212222751443
image-20231212222751443

我们依然使用之前的数据。

我们先看看如何通过切片的方法获取指定列的所有行的数据

代码语言:python
复制
info = df.loc[:, ["2021年", "2017年"]]
image-20231212223345051
image-20231212223345051

我们注意到,行的位置我们使用类似python中的切片语法。那么-1是不是也起作用呢?我们试试看如何将最后一列也包含进来。

代码语言:python
复制
info = df.iloc[:, [1, 4, -1]]
image-20231212223739668
image-20231212223739668

可以看到也获取到了,但是值得注意的是,如果我们使用了-1,那么就不能用loc而是要用iloc

大家还记得它们的区别吗?可以看看上一篇文章的内容。

同样我们可以利用切片方法获取类似前4列这样的数据

代码语言:python
复制
df.iloc[:, :4]
image-20231212224153717
image-20231212224153717

由于我们没有指定行名称,所有指标这一列也计算在内了。

接下来我们再看看获取指定行指定列的数据

代码语言:python
复制
df.loc[2, "2022年"]
image-20231212224456576
image-20231212224456576

是不是很简单,大家要注意的是,这里的2并不算是所以哦,而是行名称,只不过是用了padnas自动帮我创建的行名称。

如果要使用索引的方式,要使用下面这段代码

代码语言:python
复制
df.iloc[2, 2]
image-20231212224822281
image-20231212224822281

是不是很简单,接下来我们再看看如何获取多行多列。为了更好的的演示,咱们这次指定索引列

代码语言:python
复制
df = pd.read_excel("../data/年度数据.xls", skiprows=skip_rows, index_col=0)
image-20231212225115764
image-20231212225115764

然后,通过下面这段代码获取多行多列

代码语言:python
复制
df.loc[["市辖区数(个)", "镇数(个)"], ["2021年", "2018年"]]
image-20231212225407910
image-20231212225407910

可以看到,我们的行名用了一个列表,列名也用了一个列表。通常是建议这样获取的,因为从代码的可读性上更容易知道我们获取的是哪一行哪一列。当然我们也可以通过索引和切片的方式获取,只是可读性上没有这么好。

代码语言:python
复制
df.iloc[[2,5], :4]
image-20231212225740702
image-20231212225740702

如果不看结果,只从代码上看是很难知道我们获取的是哪几列的数据。

结尾

今天的内容就是这些,下篇内容会和大家介绍一些和我们这两篇内容相关的一些小技巧或者说小练习敬请期待。

我是Tango,一个热爱分享技术的程序猿我们下期见。


我正在参与2023腾讯技术创作特训营第四期有奖征文,快来和我瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 获取指定行和指定列的数据
  • 结尾
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档