python数据分析的实战篇,围绕实例的数据展开分析,通过数据操作案例来了解数据分析中的频繁用到的知识内容。
抖音用户数据分析
1.理解数据
数据字段含义
了解数据内容,确保数据来源是正常的,安全合法的。理解一下每一个字段的含义,A列是序号ID,不连续,没有多大的意义可以删除掉;B列uid为看视频的用户id;C列user_city为用户所在的城市,用数字来代替;D列为intem_id为作品的ID;E列author_id为发布作品的作者ID;F列item_city为发布视频作者所在的城市;G列channel为观看视频的来源,现在视频的来源不光是在APP上,在其他网站或者视频上都能有视频的推送;H列finish为是否完整浏览了视频作品;I列like为是否为作品点赞;J列music_id为使用的音乐;K列duration_time为作品的时长;L列real_time为作品真实发布的时间;M列H为当前的时间,具体到小时;N列date为发布的日前。
常用的代码 可以直接复制使用
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import pyecharts %matplotlib inline # 每一行默认输出
plt.style.use('ggplot') # 风格的设置plt.rcParams['font.family'] = 'SimHei' # 设置中文字体
plt.rcParams['axes.unicode_minus'] = False # 坐标轴支持负号
导入数据的时候,数据内容比较多,超出excel或者wps文件的范围时,打开数据就会有缺失。在数据处理的时候,如果处理的数据是几百条到万以内的,excel和wps可以进行相应的操作;分析的数据级别是几千到几十万,超出了excel和wps的表格范围,数据不能正常的显示,所以就要用pandas进行分析;如果数据是以亿级别的,就要用到大数据分析。
导入数据之后,对数据进行预览,可以看到有100多万条数据,之前的查看信息会显示有数据的数量,如果数据没有缺失值的话,就不再显示数据的数量。可以用describe来统计表中数值的信息,查看有无异常数值,如果表中数据为字符串则不显示。
2.数据处理
数据处理,在机器学习中成为数据清洗和特征工程。在探索性的数据分析(EDA)中,用不到算法的话,只需要做数据相应的处理,包含了数据的清洗。
如果对表格的原数据进行更改,可以在参数里增加inplace=True;如果不再原数据上进行更改,可以把更改的内容重新赋值为原数据的变量名。
3.分析数据
通过可视化的手段,利用图表来对数据进行分析。在探索型的数据分析(EDA)中经常用可视化来完成,利用图表展示;在验证性的数据分析中,要利用统计学的知识做假设校验,运用算法进行预测,建立模型。
画图之前要先把需要的x轴和y轴的数据准备好。分析日播放量、日用户量、日作者量、日作品量跟时间有关系,x轴为时间,y轴是播放、用户、作者、作品的信息,可以通过日期进行分组来进行计算。
作品数量top50中,数量与播放率、点赞率之间之间的关系;
4.结论
4.1分析日播放量、日用户量、日作者量、日作品量跟时间有关系
日播放量、日用户量、日作者量、日作品量随时间的变化保持一样的变化趋势,前期都平稳增长,从10-20到10-29日,出现了剧烈增长,随后又出现了下降的趋势,可能是这个期间平台进行活动,吸引用户去发布作品和观看作品,作品量,作者量,作者量在这个时间内都会出现巨幅增长,活动结束用户就回归到正常的水平。
4.2 数量与播放率、点赞率之间之间的关系
数量与播放率是成正比;作品的数量和点赞率之间没有明显的关系。
某平台二手房数据分析
用pandas做数据处理,用pyecharts做可视化的图表,分析市面上二手房各项的基本特征以及房源分布的情况,探索二手房背后的规律。
1.导入库、读取数据
常用的数据可以直接理解,专业的数据需要掌握专业的知识,提前了解专业背景。
查看信息
查看数据统计以及基本信息,楼层、面积、价格、年份列为数值,电梯列有缺失。
2.数据处理
缺失值
电梯列缺失8257条数据,对于缺失值的处理有删除和填充操作,查看一下电梯列出现的数据,查看电梯列的值的唯一值,为“有电梯”、“无电梯”和NaN,对于不确定的因素,可以填充NaN为第三方的数据,比如填充为“未知”。
查看数据求朝向的唯一值,发现房屋的朝向有意义相同的值,比如“西南”和“南西”表示同一个方位,可以对数据进行替换,对值进行统一。利用groupby统计各个城区二手房的数量,发现丰台、昌平、朝阳、海淀的二手房屋数量最多。
数据转换
把数据转换为列表,便于图表的绘制。
3.可视化分析
3.1 各个城区二手房数量分布地图
把每个区的名字取出来,拼接上字符串“区”,实例化地图类,传入键值对,绘制地图。移动鼠标可以很便捷的查看每个区的房屋数据,拖动左侧的热力图可以使得筛选区域在地图上以不同的颜色进行显示。
3.2 各个城区二手房的平均价格
对于列名称要直接复制,以防列名称中有空格类的字符,在代码中直接输入会找不到。
以区域为x轴,房屋的数量和平均价格分别为y轴绘制图表。
3.3 二手房价格最高的Top15
3.4 二手房的总价与面积的散点图
说明房屋集中在面积400平以下,价格3000万以下。
3.5 房屋朝向的饼图
大部分房屋都是南北朝向。
3.6 装修情况的柱状图和有无电梯的玫瑰图
玫瑰图也就是不规则的圆环图。
3.7 二手房楼层分布柱形图
通过数据可以看出 6层的楼房交易量最多。
3.8 房屋面积分布柱形图
每套房的面积是连续型的数值,不能进行分组,因为每套房的面积大都不相同,可以利用区间进行面元划分。
4. 分析结论
对二手房数据从不同角度进行分析,通过图表可以得出:
每个城区的二手房数量,丰台、昌平、朝阳、海淀四个区域在售的二手房数量是最多的,占总二手房的一半;
从平均售价中可以看出,丰台、昌平、朝阳、海淀的平均售价在800万以上;
二手房房屋的面积大概都在200平左右;约50%的房子都是南北朝向;
通过装修情况可以看出装修的房子比较多,说明自己住的房子出售的比较多;
大多数在售的房屋都是6层;大多数房屋的面积在150平以内。