百摩网
当前位置: 首页 生活百科

相关分析散点图怎么做(散点图箱线图核密度函数)

时间:2023-06-19 作者: 小编 阅读量: 2 栏目名: 生活百科

请注意,如果列中缺少一些值,应该对其进行删除或填充。通过散点图来分析萼片长度和萼片宽度的关系。我们将在这里对正在处理的Iris数据集进行处理。同样需要一些辅助函数,这次使用的是groupby和count。柱状图柱状图对于任何连续变量来说都是一个完美的可视化技术。默认情况下,它将为数据帧中的所有数字变量对的散点图和所有数字变量的柱状图。

全文共2286字,预计学习时长9分钟

图源:dayliscrawl

作为数据分析对外输出的关键环节,可视化技术可是数据科学家的必备技能之一。各种各样的图标花样繁多,可别被这些炫酷的“造型”吓退了。

本文将介绍九种不同的可视化技术,可以用来分析任何数据集,并且大多数都只需要少输入一行代码。就两个字,好用!

加载数据集和快速浏览数据

为简单起见,使用可从scikit-learn库加载的Iris数据集,输入以下代码:

from sklearn.datasets importload_irisimport pandas as pddata = load_iris()df = pd.DataFrame(data['data'], columns=data['feature_names'])df['species'] = data['target']df.head()

可以看到,我们有一个只有5列的数据集。使用数据框上的info()函数对其进行快速分析: df.info()

如图可见,只有150个条目,在任何一列中都没有丢失值。

此外,还可以看到前四列有浮点值,而最后一列只允许出现整数。事实上,根据数据集描述,我们知道“物种”列只取三个值,每个值代表一种花。

要确认这一点,可以对该列使用unique()函数:

df.species.unique()array([0, 1, 2])

确实,“物种”列只取三个值:0、1和2。

了解了数据集的基本信息之后就可以进行可视化了。请注意,如果列中缺少一些值,应该对其进行删除或填充。我们稍后将讨论的一些技术不允许出现丢失值。

线形图

从一个简单的线状图开始可视化。选中整个数据框。

df.plot()

如图可见,它已经根据索引值(x轴)绘制了不同颜色的所有列值。这是不为函数提供x轴参数时的默认行为。

现在看来这个图不是很有用。如果x轴是一个时间序列,那么线图是一个很好的选择。我们可能会在数据中看到一些时间上的趋势。

在本例中,只能看到数据是按“物种”列排序的(图中紫色的步骤),并且其他列的移动平均值遵循该模式(花瓣长度,特别是红色标记的花瓣长度)。

散点图

这是一种将两个连续变量之间的关系可视化的完美图表。通过散点图来分析萼片长度和萼片宽度的关系。

df.plot.scatter(x='sepal length(cm)', y='sepal width (cm)')

为了生成此图,需要通过其列名来指定图的x轴和y轴。这个图表显示这两个变量之间没有很强的相关性。让我们来检查另一对萼片长度和花瓣长度:

df.plot.scatter(x='sepal length(cm)', y='petal length (cm)')

在这种情况下,可以看到当萼片长度增加时,花瓣长度也会增加(当萼片长度大于6厘米时,增加幅度更大)。

饼状图

可以使用饼状图来可视化目标变量的类计数。我们将在这里对正在处理的Iris数据集进行处理。同样需要一些辅助函数,这次使用的是groupby和count。

df.groupby('species').count().plot.pie(y='sepallength (cm)')

这一类目具有完美的比例,因为我们的数据集包含每个类的50个条目。

注意,必须在这里使用y参数并将其设置为某个列名。这里使用了萼片长度列,但它可以是任何列,因为所有列的计数都是相同的。

面积图

还可以为这个数据集创建一个面积图。图中包括所有有厘米的维度,但是要删除“物种”列,因为这些在本例中没有任何意义。

columns = ['sepal length (cm)','petal length (cm)', 'petal width (cm)', 'sepal width (cm)']df[columns].plot.area()

这张图上的测量值是一个接一个的。这个图表可以让你直观地检查包含在图表中的每个度量之间的比率。所有的数值向之后的条目都有一个增长的趋势。

条形图

当显示条目的平均或计数时,这是一个很好的图表类型。可以用它来计算数据集中每个类型的每个维度的平均值。为此,需要使用groupby和mean函数。

df.groupby('species').mean().plot.bar()

上图非常直观,可以看到不同类型和不同柱的平均测量值存在差异。

箱线图

箱线图也是应该用于数值变量的可视化技术。它可以为所有的测量列绘制箱线图(不包括物种列,因为对于这个分类变量来说,箱线图没有意义)。

columns = ['sepal length (cm)', 'petallength (cm)', 'petal width (cm)', 'sepal width (cm)']df[columns].plot.box()plt.xticks(rotation='vertical')

如图所示,所有的箱线图都画在同一张图上。由于没有太多的变量来表示,所以这对我们来说是很好的。注意,必须旋转x标签,不这样做标签的名称会相互重叠。

柱状图

柱状图对于任何连续变量来说都是一个完美的可视化技术。让我们从简单的hist函数开始。

import matplotlib.pyplot as pltdf.hist()plt.tight_layout()

可以看到,这会为数据集中的每个数值变量生成一个柱状图。要制作图表,就不得不添加一些额外的代码行。这是我调用tight_layout函数的第一个导入行和最后一行。如果不添加这个,标签和子图名可能会重叠并且不可见。

核密度函数

与柱状图类似,可以使用核密度函数:

df.plot.kde(subplots=True,figsize=(5,9))

它给出了与柱状图相似的结果。必须在这里指定一个图形大小,否则图形会在垂直方向上被压得太厉害。

此外,还将subplots参数设置为True,因为在默认情况下,所有的列都会显示在同一个图表上。

散点矩阵图

这是我最喜欢的数据分析的可视化技术之一,因为它可以对数据集中的所有数值及其相关性进行快速分析。

默认情况下,它将为数据帧中的所有数字变量对的散点图和所有数字变量的柱状图。

from pandas.plotting importscatter_matrixscatter_matrix(df, figsize=(10, 10))

你将得到这个绘制精美的平面图,只用一行代码就能告诉你很多关于数据集的信息。在这组数据中,只需扫一眼就能发现这组数据中的一些变量之间的相关性。唯一需要设置的附加参数是数字尺寸,这是因为图中的地块非常小,默认的图表尺寸很小。

可视化技术是你在数据分析的修炼道路上必不可少的一关,试试将这些知识应用到你所选择的数据集。把数据玩出花,其实很简单。

留言点赞关注

我们一起分享AI学习与发展的干货

如转载,请后台留言,遵守转载规范

    推荐阅读
  • 对怀孕人的祝福语(怎么写怀孕人的祝福语呢)

    对怀孕人的祝福语您的肚子一天比一天大,可是在我的心目中,您的容颜却一天比一天美丽。希望在这特别的日子送上我特别的问候,老婆,请耐心等待宝宝的出生,生活将会是如此的快乐!亲爱的老婆,如果宝宝是女孩,我会好好保护你们母女俩,如果宝宝是男孩,我和儿子会一起保护你!我代孩子祝你生日快乐!祝愿早生贵子,平安幸福!快为人母,一定很开心。也愿我们的宝宝健康成长!

  • 湖南永州哪个县的经济最差(湖南南部曾有一个大县)

    单论人口,祁阳和祁东当属永州和衡阳人口最多的县城之一。其实祁阳和祁东是衡阳和永州联系最紧密的城市,一些祁阳人到祁东买房置业、一些祁东人到祁阳做生意,两县人民互通婚姻更是常见。归阳还是衡阳境内少数几个千吨级码头之一,是祁东及附近地区重要的物资集散地。而因为地理位置的特殊性,祁阳和祁东仍然是最具发展潜力的城市之一。

  • 六一儿童节朋友圈文案(六一儿童节朋友圈文案怎么写)

    我还是孩子,我要过六一你们这些叔叔阿姨,快给我回去返老还童,我来为大家科普一下关于六一儿童节朋友圈文案?以下内容希望对你有帮助!六一儿童节朋友圈文案我还是孩子,我要过六一。童心,是比野心更难得的梦想六一儿童节的意义就是,你成为了全世界的大人,但还是一个人的小朋友。希望你时常记得这世界的可爱,无惧岁月漫长,不在大悲大喜时才感受到真实的存在,六一儿童节快乐。

  • 免费有效的推广平台有哪些软件(建议收藏智能线上推广)

    海量的短视频流量,意味着无限的商机,众多的企业主和个人都希望通过短视频来推广自己的品牌或服务。其中,比较常用的视频推广工具DOU,可以助力视频上热门,获得更多的流量。通俗来说,当你购买并使用DOU后,你的视频会被推荐给更多感兴趣的用户群体,从而增加你视频的曝光量,也就是播放量。所以,大家可以选择DOU视频推广平台,可以快速曝光自己的作品,积累播放量。如果视频内容足够优秀,还能获得点赞和评论,甚至增加粉丝。

  • 被狗咬了以后要打几针疫苗(伤口要这样处理)

    将污血挤出来之后用肥皂水反复的冲洗伤口,大概要冲洗半个小时,用肥皂水冲洗伤口可以起到很好的消退作用,最后可以在伤口上面涂一些碘酒,然后用纱布固定,然后就得要去医院打狂犬疫苗了,被狗咬了之后不打狂犬疫苗就容易引发狂犬病。打了狂犬疫苗之后不用在医院住院,可以直接回家,不过有些人的狂犬疫苗需要打一个礼拜左右,每天都需要按时去医院打针,不要半途而废。

  • corel图案(Corel软件公司启用新Logo)

    转自公众号:logo设计视觉9月13日,Corel公司宣布启用新Logo并改名为Alludo。其中像coreldraw这样已经存在了几十年的品牌,将继续作为子品牌存在。CorelDRAWCorel经历了近年来一次重大蜕变,愿景和战略发生了变化,而重点更多地放在商业软件上,使命是改变工作的未来。新Logo和字体设计Alludo将这一变化视为更好地为创意工作者提供图形、虚拟化解决方案的使命。

  • 请问吃猪肾有什么坏处 请问吃猪肾有什么坏处和好处

    常爱吃猪肾的人能够增加冠心病的发病率,而且能够引起心绞痛,所以患有心脏病的人也要多加的注意,平时做到尽量少吃,还有心梗的病人最好不要吃猪肾。人们常说的猪肾其实就是猪的肾脏,不仅胆固醇高,还含有重金属镉,不宜过多进补。猪肾有滋肾利水的作用,适宜孕妇偶尔食用以滋补肾脏。

  • 新鲜南瓜的保存方法(新鲜南瓜怎么保存)

    新鲜南瓜的保存方法地面堆码贮藏。地面垫5cm厚稻草或麦秸,将老熟、无损伤南瓜堆上。堆放时,保持南瓜挨着地面的方向向下,瓜蒂朝里瓜顶向外码成圆锥形。贮藏室内用竹木或角铁搭成分层贮藏架,每层高度比南瓜高8~10cm。南瓜摆放状态与堆藏相同,架式分层贮藏效果优于地面贮藏。窖内温度控制在10℃左右,相对湿度保持70%~80%。贮藏前要注意选好南瓜,适期采收,不能遭受霜打,瓜蒂处保留5cm长的瓜梗,防止机械损伤。

  • 汽车隔音到底要不要做(汽车隔音不好别着急)

    事实上,开车多年的老司机们,隔音效果差不要紧,接下来介绍的这几招决对管用。密封条的作用本身是用来隔绝空气,但是用在隔绝噪音上同样有效。现在汽车市场中有很多特制的静音轮胎,它们和传统轮胎最大的区别就是在轮胎的纹路和设计上。如果能够换上静音轮胎,那么汽车在行驶过程中,轮胎和地面之间的摩擦声音将会降到最小。惟一的缺点就是成本过高。活动时间2022年4月11日至2022年4月17日

  • 长沙抓毒虫(长沙一小区多名业主被)

    转自芒果都市近日,长沙岳麓峰景小区二期的多位业主爆料反映,称近期许多业主的家中出现了隐翅虫活动的迹象。医院诊断结果提示,造成李先生颈部皮损的原因为隐翅虫皮炎。患者后颈部灼热、疼痛,皮肤红了一大片,同样被诊断为隐翅虫皮炎。若发生于眼睑等部位,还出现明显的肿胀。如果出现隐翅虫皮炎相关症状,应立即就医,以免引起细菌感染。