- 产品
- 产品解决方案
- 行业解决方案
- 案例
- 数据资产入表
- 赋能中心
- 伙伴
- 关于
时间:2022-05-21来源:扰乱浮尘浏览数:320次
数据可视化是指用图形或表格的方式来呈现数据。图表能够清楚地呈现数据性质, 以及数据间或属性间的关系,可以轻易地让人看图释义。用户通过探索图(Exploratory Graph)可以了解数据的特性、寻找数据的趋势、降低数据的理解门槛。
利用可视化探索图表
一、数据可视化与探索图 数据可视化是指用图形或表格的方式来呈现数据。图表能够清楚地呈现数据性质, 以及数据间或属性间的关系,可以轻易地让人看图释义。用户通过探索图(Exploratory Graph)可以了解数据的特性、寻找数据的趋势、降低数据的理解门槛。
二、常见的图表实例 本章主要采用 Pandas 的方式来画图,而不是使用 Matplotlib 模块。其实 Pandas 已经把 Matplotlib 的画图方法整合到 DataFrame 中,因此在实际应用中,用户不需要直接引用 Matplotlib 也可以完成画图的工作。
1.折线图 折线图(line chart)是最基本的图表,可以用来呈现不同栏位连续数据之间的关系。绘制折线图使用的是 plot.line() 的方法,可以设置颜色、形状等参数。在使用上,拆线图绘制方法完全继承了 Matplotlib 的用法,所以程序最后也必须调用 plt.show() 产生图,如图8.4 所示。df_iris[['sepal length (cm)']].plot.line() plt.show()ax = df[['sepal length (cm)']].plot.line(color='green',title="Demo",style='--') ax.set(xlabel="index", ylabel="length")plt.show()
数据探索实战分享
本节利用两个真实的数据集实际展示数据探索的几种手法。
一、2013年美国社区调查 在美国社区调查(American Community Survey)中,每年约有 350 万个家庭被问到关于他们是谁及他们如何生活的详细问题。调查的内容涵盖了许多主题,包括祖先、教育、工作、交通、互联网使用和居住。 数据来源:https://www.kaggle.com/census/2013-american-community-survey。 数据名称:2013 American Community Survey。 先观察数据的样子与特性,以及每个栏位代表的意义、种类和范围。# 读取数据df = pd.read_csv("./ss13husa.csv")# 栏位种类数量df.shape# (756065,231)# 栏位数值范围df.describe() 先将两个 ss13pusa.csv 串连起来,这份数据总共包含 30 万笔数据,3 个栏位:SCHL ( 学历,School Level)、 PINCP ( 收入,Income) 和 ESR ( 工作状态,Work Status)。pusa = pd.read_csv("ss13pusa.csv") pusb = pd.read_csv("ss13pusb.csv")# 串接两份数据col = ['SCHL','PINCP','ESR']df['ac_survey'] = pd.concat([pusa[col],pusb[col],axis=) 依据学历对数据进行分群,观察不同学历的数量比例,接着计算他们的平均收入。group = df['ac_survey'].groupby(by=['SCHL']) print('学历分布:' + group.size())group = ac_survey.groupby(by=['SCHL']) print('平均收入:' +group.mean())二、波士顿房屋数据集 波士顿房屋数据集(Boston House Price Dataset)包含有关波士顿地区的房屋信息, 包 506 个数据样本和 13 个特征维度。 数据来源:https://archive.ics.uci.edu/ml/machine-learning-databases/housing/。 数据名称:Boston House Price Dataset。 先观察数据的样子与特性,以及每个栏位代表的意义、种类和范围。 可以用直方图的方式画出房价(MEDV)的分布,如图 8.8 所示。df = pd.read_csv("./housing.data")# 栏位种类数量df.shape# (506, 14)#栏位数值范围df.describe()import matplotlib.pyplot as plt df[['MEDV']].plot.hist() plt.show()
—END—