前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python数据分析—数据选择

Python数据分析—数据选择

作者头像
阿黎逸阳
发布2020-11-24 11:29:32
1.1K0
发布2020-11-24 11:29:32
举报

由于互联网的快速发展,网络上存储了越来越多的数据信息。各大公司通过对这些数据进行分析,可以得到一些有助于决策的信息。

比如通过对某些用户的淘宝浏览记录数据进行分析,可以发现这些客户的潜在消费点,通过分类定点投放广告,增加商品的销售。

再比如信贷领域,可以通过分析申请人的征信数据,建模计算出申请人逾期的可能性大小,决定是否放贷,从而提高公司资金的使用价值。

在数据分析越来越热门的今天,学会数据分析,就是你升职加薪的重要砝码。

本文是数据分析的第二课,教大家如何在python中进行数据选择。

本文目录

  1. 选择数据框中的某一列
  2. 选择数据框中的多列
  3. 选择数据框中的某一行
  4. 选择数据框中的多行
  5. 选择子数据框
  6. 选择带条件的数据框

注意:本文沿用数据分析第一课【Python数据分析—数据建立】里的数据框date_frame:

1 选择数据框中的某一列

选择数据框的某一列有四种方法。

第一种方法:数据框的名字.列名。

第二种方法:数据框的名字['列名']。

第三种方法:数据框的名字.iloc[:, 列下标],假设要选第3列,它对应的下标为2,两者是减一的关系。

第四种方法:数据框的名字.loc[:, ['列名']]

如果我需要选择date_frame数据框中的name列(第二列),可在jupyter中运行如下语句:

date_frame.name       #方法一
date_frame['name']    #方法二
date_frame.iloc[:, 1]  #方法三
date_frame.loc[:, ['name']]  #方法四

前三种方法得到结果如下:

第四种方法得到结果如下:

注意:前三种方法得到的数据类型是Series,第四种方法得到数据类型是DataFrame。

2 选择数据框中的某几列

如果需要选择数据框中的多列,可以采用如下三种方法:

第一种方法:数据框的名字[['列名1','列名2',....,'列名n']]。

第二种方法:数据框的名字.loc[:, ['列名1','列名2',....,'列名n']]。

第三种方法:数据框的名字.iloc[:, 起始列下标:终点列下标加一]。

如果我需要选择date_frame数据框中的name列和height列,可在jupyter中运行如下语句:

date_frame[['height','name']]         #方法一
date_frame.loc[:, ['height','name']]  #方法二
date_frame.iloc[:, [1,4]]  #方法三

前两种方法得到的结果如下:

可以发现前两种方法选择某些列,可以不按原数据框的顺序进行筛选,可以自定义顺序。

第三种方法得到的结果如下:

注意:在python中对应的下标和当前位置是减一的关系,且date_frame.iloc[:, 1:3]中的1:3取不到下标3,是含头不含尾的。

3 选择数据框中的某一行

如果需要选择数据框中的某一行,可以采用如下三种方法:

第一种方法:数据框的名字[行下标:行下标加一]。

第二种方法:数据框的名字.loc[行下标, :]。

第三种方法:数据框的名字.iloc[行下标, :]。

如果我需要选择date_frame数据框中第一行(对应行下标为0),可在python中输入如下代码:

date_frame[0:1]      #第一种方法
date_frame.loc[1,:]  #第二种方法
date_frame.iloc[1,:] #第三种方法

第一种方法得到的是一个数据框:

后两种方法得到的是一个Series,具体结果如下:

4 选择数据框中的某几行

如果需要选择数据框中的某几行,可以采用如下三种方法:

第一种方法:数据框的名字[起始行下标:终点行下标加一]。

第二种方法:数据框的名字.iloc[起始行下标:终点行下标加一, :]。

第三种方法:数据框的名字.loc[起始行下标:终点行下标, :]。

如果我需要选择date_frame数据框中第一行到第二行的数据(对应行下标为0:1),可在python中输入如下代码:

date_frame[0:2]          #第一种方法
date_frame.iloc[0:2,:]   #第二种方法
date_frame.loc[0:1,:]    #第三种方法

三种方法得到的结果如下:

需要注意的是第三种方法选行下标是含头含尾的,这个可以自己在电脑中运行一下代码感受一下。

5 选择一个子数据框

我们之前单独选择了某些行和某些列,如果我们想选行下标为1和2,列下标也为1和2 的子数据框(图中绿色部分),我们该怎么办?

可以把选择行数据框和列数据框的代码叠加(不分先后顺序),进行选择。

比如采用如下代码:

date_frame[1:3][['name','gender']]

得到结果如下:

6 选择带条件的数据框

假设我们想选择date_frame中性别是男性的子数据框,我们可以在jupyter中输入如下代码:

date_frame[date_frame.gender=='男']

得到结果如下:

假设我们想选择date_frame中年龄大于17岁且身高高于170的学生信息,我们可以在jupyter中输入如下代码:

date_frame[(date_frame.height>1.7)&(date_frame.age>17)]

得到结果如下:

至此,在python中进行数据选择的基本操作已经完成啦,大家可以动手练习一下,思考一下还有没有别的数据选择的更好方法

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

本文分享自 阿黎逸阳的代码 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档