写在前面

如果你忘记了前面的文章,可以看看加深印象:
Pandas数据处理
Python数据分析实战:缺失值处理
Python数据分析实战:获取数据

然后可以进入今天的正文

一、描述性统计分析

Excel里可以用【数据分析】功能里的【描述统计】功能来查看数据集常用的统计指标,但这里只能是对数值型的数据进行统计。


pandas里可以用describe方法对整个数据集做一个描述性统计分析,当然这里也只是对数值型数据才可以出结果,非数值型数据不在统计范围内。

# 描述性统计分析df_list.describe()

得到结果如下,可以看到count(计数)、mean(均值)、std(标准差)、min(最小值)、max(最大值)、25%、50%、75%分别表示3/4位数、中位数和1/4位数。


行列转置

由于字段太多了,所以这里可以转置一下,方便查看,用.T转置

# 行列转置df_list.describe().T

结果如图,更符合一个表格的习惯,可以看到能够被统计出来的只有数值型数据,字符型的数据是统计不出来的。


观察到最小入住天数(minimum_nights)这个字段最小值、1/4位数、中位数、3/4位数都是1,说明大部分房源对最小入住天数的要求都是1天。同样的结论适用于每月评论数(reviews_per_month)这个字段

二、分组分析

Excel里用数据透视表可以实现数据分组计算的功能。


看下neighborhood_new字段都有哪些值,用value_counts方法对出现次数计数

# 数值计数df_list["neighborhood_new"].value_counts()

结果可以看到neighborhood_new字段下总共有多少个区县分类及其出现的次数按降序排列下来了,可以看到朝阳区的房源最多,平谷区的房源最少。


还可以用groupby方法实现分组计数

# 分组df_list.groupby("neighborhood_new")["neighborhood_new"].count()

得到的结果是一样的


对room_type_new一列也可以分组看下结果

df_list["room_type_new"].value_counts()

可以看到房间类型上有3种分类,整套房源(Entire home)最多,合租型的房源(Shared room)最少。


三、交叉分析

分组

对区域分组,统计不同区域房价的水平,同样用groupby方法分组,但是可以用agg方法一次使用多种汇总方式。

df_list.groupby("neighborhood_new")["price"].agg(["max","min","mean","count"])

结果如图,对neighborhood_new字段分组,对分组后的价格求最大最小平均值并计数,可以看到怀柔区的房价平均值最高,丰台区最低。


对房间类型分组,并将结果按均值降序排列

r_p = df_list.groupby("room_type_new")["price"].agg(["max","min","mean","count"]).reset_index()r_p.sort_values("mean",ascending = False)

结果如图,整租的房价均值最高,合租最低,很合理的结果。


透视

对房间类型和区域做一个透视,使用pivot_table方法,和Excel里的数据透视表是一种类型的操作,第一个参数是要透视的数据,values参数是Excel透视表中的值区域,即要进行汇总的字段,index参数是Excel透视表中的行区域,columns参数是列区域,aggfuc参数是要对values进行汇总的类型。

pd.pivot_table(df_list,values = "price",index = "neighborhood_new",                columns = "room_type_new",aggfunc = "mean",margins = True)

结果如图,可以看到整租、合租、单间在各个区域中的价格分布。


四、相关性分析

相关性分析是用来描述变量之间相关关系的结果,用相关系数r来表示,r>0表示正相关,r<0表示负相关,r的绝对值越接近1,表示越高度相关。Excel里用【数据分析】工具里的【相关系数】功能可以直接计算出各个字段的相关系数。


python里可以用corr函数计算数据间的相关系数,对整个数据表计算,并对结果取小数点后4位

# 计算相关系数df_list.corr().round(4)

结果如下,就可以得到各个列之间的相关系数。


但是这里我们其实最关注的是他们同价格之间的相关性,也就是图中标红的部分,可以对这列的数值排个序。


数值排序

数值排序就是让整个数据表按照指定列升序或降序排列,用到sort_values方法。对求完相关系数后的数据框选择其price列进行降序,第一个参数是对哪一列进行排序,第二个参数ascending = False是降序排列,默认是True升序。

# 数值排序corr_p = df_list.corr().round(4)corr_p["price"].sort_values(ascending = False)

结果如下,可以看到,房价和经纬度(latitude、longitude)的相关性是最高的,除此以外相比其他变量,可预定天数(availability_365)和价格最正相关的,其次每月评论数量(reviews_per_month)和价格呈负相关。


写在后面


猜你喜欢:
数据分析实战:母婴商品分析

《吊打分析师》实战—我要租个好房

简单的Excel数据分析案例

为什么要学统计学:赤裸裸的统计学

成为数据分析师的第三年,我写了10W字

@ 作者:可乐
@ 公众号/知乎专栏/头条/简书:可乐的数据分析之路
@ 个人微信:data_cola


list里面的数据按3个字段排序_Python数据分析:探索性分析相关推荐

  1. NextErp 数据导入 文档字段自动填充上下文代码分析

    目录 业务场景 前端发起开始导入数据时向后端发起请求信息 后端代码解析 系统背景 NextErp系统是一套低代码的开发平台,使使用人员重注重与业务,但在一个现实业务场景中免不了进行定制与开发,做为开发 ...

  2. python数据可视化案例 淘宝粽子_Python可视化对比分析淘宝低价人群和匿名用户的淘宝连衣裙数据...

    1.我是一个低价人群用户 上周发表文章<一个匿名用户的淘宝"连衣裙"大观>后,交流群里面很热闹地讨论了起来,小伙伴们都在秀自己的淘宝连衣裙搜索价格,相较于小伙伴们搜索出 ...

  3. 程度性数据python分析_python数据分析实战之AQI分析

    文章目录 1.数据分析的基本流程 2.明确需求和目的 2.1 需求和目的 3.数据收集 4.数据预处理 4.1 数据整合 4.1.1 加载相关库和数据集 4.1.2 数据总体概览 4.2 数据清洗 4 ...

  4. List按照时间(或某个字段)字段排序

    在代码开发中会遇到,讲取到的数据list按照某个字段排序,可以直接使用Collections.sort()方法排序 //排序前,要确认list 是否为空,避免空指针异常List <Obeject ...

  5. python使用箱图法和业务规则进行异常数据处理并检查预测使用的数据特征是否有字段缺失的情况并补齐

    python使用箱图法和业务规则进行异常数据处理并检查预测使用的数据特征是否有字段缺失的情况并补齐 关于预测或者推理的时候特征补齐的情况是这样的: 你在模型训练的时候使用了多少特征,那么在模型预测和推 ...

  6. Py之pandas:利用isin函数对dataframe格式数据按照多个字段的条件筛选

    Py之pandas:利用isin函数对dataframe格式数据按照多个字段的条件筛选 目录 利用isin函数对dataframe格式数据按照多个字段的条件筛选 代码设计 输出结果

  7. access vba表字段_【Access】创建数据表并新增字段

    时 间:2016-08-02 13:29:20 作 者:摘 要:用代码创建数据表并新增字段 正 文: 在DAO中,可以通过CreateTableDef方法在数据库中创建新的数据表,其具体的语法格式如下 ...

  8. db2查询字段备注_通过逐浪数据精灵管理sqlserver数据表备注以及字段说明

    通过逐浪数据精灵管理sqlserver的数据表备注以及字段说明备注(附脚本方法) 基本介绍 逐浪数据精灵,是由逐浪软件团队提供的生成态产品,可以快速的方便的管理数据表,目前对商业用户开放. 管理数据库 ...

  9. datagrid如何获取一行数据中的某个字段值_MySQL 如何查找删除重复行?

    如何查找重复行 第一步是定义什么样的行才是重复行.多数情况下很简单:它们某一列具有相同的值.本文采用这一定义,或许你对"重复"的定义比这复杂,你需要对sql做些修改.本文要用到的数 ...

最新文章

  1. php左右滑动翻页代码,C#_NGUI实现滑动翻页效果实例代码,废话不多说了,直接给大家上 - phpStudy...
  2. 推论统计学基础一:Estimation
  3. 《价值50亿的10句话》读后感(学生作业分享)
  4. linux脚本:给定目录下所有文件中查找某字符串
  5. 强烈推荐,关于5G最深刻的一篇文!
  6. Mongo之架构部署(Replica Sets+Sharding)
  7. 了解Binder机制原理和底层实现
  8. 模板题——容斥原理、博弈论
  9. LaTex 表格的单元格划横线,分成两部分
  10. 二建带记忆功能计算机,二建实务记忆技巧
  11. redhat8.2-docker安装及部分镜像下载
  12. CTF 实验吧 变异凯撒 writeup
  13. VS2010如何添加MSCOMM控件
  14. 通达信公式-均线向上
  15. iOS 九宫格抽奖(弱鸡)
  16. Everything 1.3.3 Beta 简体中文绿色版 | 极速文件搜索工具
  17. 解除安卓车机禁止安装软件_2020美篇app下载安装官方免费-美篇相册制作免费软件下载v6.3.3 安卓最新版...
  18. php全角半角转换,php代码中全角数字如何转半角
  19. 软件开发项目中的成本比例
  20. mes系统开发oracle,开发MES系统(制造执行系统)需要掌握哪些信息?

热门文章

  1. 卡萨帝:用发明去超越历史!15年走完百年路
  2. 与年轻人的“要疯”五年,安踏如何保持新鲜感与吸引力?
  3. “冷潮”之后,P2P或更加适合投资
  4. powerbi和python区别_PowerBI和Python关于数据分析的对比
  5. mysql/event.myd no fond_mysql Last_Error: Error 'File './sales.MYD' not found (Errcode: 24)
  6. c语言中的void指针,C程序中void指针的概念
  7. 一个电脑能装几块固态_装上固态SSD的电脑几个月后就卡慢?是因为你忽略了这一个细节...
  8. 项目编译失败_Swift源码编译让底层更清晰
  9. linux怎么永久保存,Linux系统中,让alias命令永久保存的方法!
  10. Python 删除文件与文件夹