高考考试网
当前位置: 首页 高考资讯

趣味谈数据分析(九道门如何执行探索性数据分析)

时间:2023-05-26 作者: 小编 阅读量: 5 栏目名: 高考资讯

九道门如何执行探索性数据分析探索性数据分析(EDA)是了解数据集的关键步骤在EDA中可以执行各种步骤,下文中会我会介绍4个主要步骤其中数据集来自帕尔默群岛企鹅数据数据分析优质社群,等你加入哦~一、仔细检查数据这一步的目的是找出数。

探索性数据分析(EDA)是了解数据集的关键步骤。在EDA中可以执行各种步骤,下文中会我会介绍 4 个主要步骤。其中数据集来自帕尔默群岛企鹅数据。数据分析优质社群,等你加入哦~

一、仔细检查数据

这一步的目的是找出数据集的变量和范围。它回答诸如"此数据集是否足够大?"或“它包含多少个特征或行?"等问题。加载数据集后,使用 head() 函数检查前五行将是了解数据集结构的良好开端,具体操作如下所示。

import pandas as pdimport numpy as np import seaborn as snsimport matplotlib.pyplot as pltimport warningswarnings.filterwarnings('ignore')#Loading the datasetpenguins_size = pd.read_csv('penguins_size.csv', sep = ",")penguins_size.head()

print("Shape is: ", penguins_size.shape)

从这里得出数据集的范围为(344,7),这意味着存在7个特征和344行,这表示数据集不够大。为了可视化特征的数据类型,可以使用 info() 函数,如下所示。结果显示,物种、岛屿和性别是目标,其余特征是浮动变量。使用 dtypes 也是了解列的数据类型的一种替代方法。

penguins_size.info()

penguins_size.dtypes

二、数据清理

查找缺失值、删除重复项等是探索性数据分析的关键步骤。这些值可能会导致我们的模型最终得出错误的结论。仅调查 isnull()是不够的。例如,在包含心率特征的数据集中,该特征的值不能为 0。在这种情况下,0 也是一个缺失值,需要处理。

有多种方法可以处理数据的缺失值,例如删除包含缺失值的行(如果数据集足够大并且缺失值的数量不是太多,这是一个选项),插补方法(特征的平均值/中位数)等。

penguins_size.isnull().sum()

如上所示,除岛屿和物种外的所有特征在此数据集中都包含缺失值。因为数据集非常小,所以我选择将浮点特征的缺失值与相应特征的均值相结合。

penguins_size.value_counts(["sex"])

penguins_size['sex'] = penguins_size['sex'].fillna('MALE')

对于企鹅的性别,在检查了雌性和雄性值的计数后,将考虑最常见的值,在这种情况下,缺失值将用 "MALE" 进行估算。如上所示,另一个值为".",必须将其归因或丢弃。在所有缺失值被插补或删除后,我们再次使用 isna () 函数进行检查,确定没有遗漏值。

penguins_size.drop(axis = 0, inplace = True, index = 336)penguins_size.isna().sum()

最后,对于这个部分,需要检查是否存在任何重复行。

duplicated = penguins_size.duplicated()print(duplicated.sum())

三、统计洞察

这也是理解数据的一部分。处理缺失值后,可以使用 describe() 函数来获取数据的平均值、最大值、最小值和标准偏差等信息。此方法还可用于检测缺失值,例如,如果特征值的最小值在不应为 0 的地方为 0,则 describe()函数有助于处理缺失值。

penguins_size.describe()

通过使用 value_counts() 函数,可以计算对象的唯一值。此外,每个物种的体重平均值可以通过使用 groupby()函数找到对于连续特征,此函数在分类和观察数据方面非常有用。

penguins_size['species'].value_counts()

# Find body mass mean for each species.mean_bodymass = penguins_size.groupby('species')['body_mass_g'].mean()mean_bodymass

四、数据可视化

为了更好地可视化数据集,可以使用各种绘图技术,在下文中简单介绍几个。有些图在可视化分类数据方面效果更好,有些图则更适合数值数据的可视化。

箱形图

通过显示数据分布来检查异常值或理解分类特征与连续特征之间关系的好方法。

如下图所示,由于没有数据点分别高于或低于最大值和最小值,因此未检测到异常值。此外,可以很容易地找到数据点的中位数,因为通过框内的水平线代表的就是中位数。

#Relationship of the culmen length and sex of the penguins.fig = plt.figure(figsize=(5,8))ax= sns.boxplot(x = penguins_size.sex, y=penguins_size['culmen_length_mm'],orient="v", palette = "cividis")plt.title('Culmen_length_mm')plt.show()

直方图

直方图用于描述频率分布。

#Shows us frequency distribution.fig,axs = plt.subplots(1,4,figsize=(20,6))axs[0].hist(penguins_size.culmen_depth_mm)axs[0].set_title('culmen_depth_mm')axs[0].set_ylabel('Frequency')axs[1].hist(penguins_size.culmen_length_mm)axs[1].set_title('culmen_length_mm')axs[2].hist(penguins_size.flipper_length_mm)axs[2].set_title('flipper_length_mm')axs[3].hist(penguins_size.body_mass_g)axs[3].set_title('body_mass_g')plt.show()

此外,kdeplot 是可视化数据分布的另一种方法。此图实际上类似于直方图,但不是将值放入条柱中,而是绘制一条曲线。

#Used for visualizing the probability density of a continuous var.sns.kdeplot(penguins_size.flipper_length_mm,color='Cyan')plt.show()

条形图

在条形图中,x 轴表示分类变量, y 轴表示数值变量。这就是为什么条形图描绘了这两个变量之间的关系。

plt.figure(figsize=(8,5))colors = ["cyan","lightblue", "darkblue"]sns.barplot(x =penguins_size['island'],y = penguins_size['body_mass_g'], palette = colors)plt.title('Body Mass of Penguins for different Islands')plt.show()

通过使用 pandas 函数交叉表,可以分析两个或多个变量之间的关系。作为说明,下面的条形图强调了生活在特定岛屿中的特定物种的企鹅数量之间的关系。

pd.crosstab(penguins_size['island'], penguins_size['species']).plot.bar(color=('DarkBlue', 'LightBlue', 'Teal'))plt.tight_layout()

小提琴图

小提琴图描述的是数据集的概率密度。由于两个不同的类别可能具有相同的平均值,在这种情况下观察小提琴图会更有用。

在下面的小提琴图中,梦幻岛企鹅体重的平均值在3000到4000克之间,而在比斯科岛企鹅体重的平均值大约在4500到5500克之间。

sns.violinplot(x = 'island',y = 'body_mass_g',data = penguins_size, palette="YlOrRd_r")plt.title('Violin plot')

想要完整代码的同学可以留言获取哦~

    推荐阅读
  • 华为怎么补电(华为如何补电)

    我们一起去了解并探讨一下这个问题吧!华为怎么补电打开手机,进入手机主页面,定位并打开,进入到主页面。从页面跳转到页面后,找到页面最下面的选项。进入页面后,使用原装充电器充电,进行补电,当补电完成后页面会显示提示。华为手机在选项中还可以开启USB调试模式,点击----即可。

  • 白木耳炖瘦肉(白木耳炖瘦肉的烹饪方法)

    下面更多详细答案一起来看看吧!白木耳炖瘦肉原料:白木耳50克,猪瘦肉350克,大枣10个,酱油、姜、葱各适量。瘦肉洗净,切成小块状;白木耳泡发。用泡过白木耳的水与瘦肉、大枣一起在锅中炖至熟烂后,可加食盐、酱油、葱姜等调料来调味。白木耳炖瘦肉功效:养脾和胃,补气补血。适用于产后进补。

  • oppo手机怎么设置图案锁屏(五步教你设置)

    下面内容希望能帮助到你,我们来一起看看吧!oppo手机怎么设置图案锁屏将手机打开,在桌面点击设置图标。接着在里面点击选项。然后在里面绘制图案,作为锁屏图案,需要绘制两遍。然后可以看到解锁按钮变成绿色,我们就设置图案锁成功,在下面点击显示关闭密码的时候,就是开启了锁屏密码锁,我们就可以打开手机屏幕时,必须输入锁屏密码图案锁图案,才能打开手机屏幕。

  • 极品飞车最高通缉帧数低手游(iOS账号分享极品飞车)

    iOS账号分享极品飞车《极品飞车:最高通缉NeedforSpeedMostWanted》是一款由EA发行的赛车竞速类游戏,该作是重置的经典9代的作品,将以高画质高自由度的品质重塑经典辉煌游戏允许玩家把非法的街头赛车、改装和。

  • 十月新番详细介绍(十月番开播一月)

    最近,有日本网友在网上贴出了自己对于十月新番的排名。快来跟着企鹅娘一起看看日本网友对于今年十月新番的评价吧。以下、\(^o^)/でVIPがお送りします虽然我是男生但是我觉得《冰上的尤里》真的超级好看啊。以下、\(^o^)/でVIPがお送りします我觉得最有趣的还是《我太受欢迎了该怎么办》,女主真的好有趣哦。以下、\(^o^)/でVIPがお送りします我觉得应该是第一名《超自然9人组》第二名《FlipFlappers》第三名《漂流武士》这样才对吧。

  • 南洋杉盆景干枯了还能救活吗(能不能就活干枯的南洋杉盆景)

    以下内容希望对你有帮助!南洋杉盆景干枯了还能救活吗南洋杉盆景干枯了还能不能救活,要看南洋杉干枯的程度。如果南洋杉只是叶子干枯,主干发绿,根部腐烂不严重,说明并没有死掉,还是能救活的,将干枯枝叶剪掉,脱盆取出修剪掉烂根,消毒杀菌后重栽到土壤中。如果南洋杉的主干和根部干枯了,说明南洋杉基本上死掉了,没有办法救活了。

  • 提前还房款怎么预约(流程介绍)

    提前还贷是需要向各个银行提前预约的,通常情况下,没有预约就去还贷银行是不会给办理的。提前还贷的预约方式有两种:打电话预约或柜台预约。要注意的是还款应为万的整数倍,提前还款是不收零头的。在预约成功之后,需要准备办理提前还贷的相关文件,主要包括借款合同、本人的身份证、还款卡。到达银行后,可先咨询银行工作人员,根据指引到柜台领取“提前还贷申请表”。填写完毕后向还款卡中存入将要提前还款的数额。

  • 公司股权解除冻结在哪里(股权冻结后解冻流程)

    公司股权解除冻结在哪里冻结期限届满后,会自动解除冻结。法律、司法解释另有规定的除外。申请执行人申请延长期限的,人民法院应当在查封、扣押、冻结期限届满前办理续行查封、扣押、冻结手续,续行期限不得超过前款规定期限的二分之一。

  • 汽车节油的有效方法有哪些(驾驶技术好如何省油)

    如果猛抬油门,则会使发动机转速突然降低而起到牵阻作用,抵消一部分行驶惯性,并使汽车产生“颤动”,从而致使耗油增加。减少不必要的制动。保持行车安全距离。尽可能使用高档位行车。汽车在行驶中,挂空档靠汽车本身的动能或下坡的势能继续行驶,称为滑行。滑行可分为加速滑行、减速滑行和下坡滑行。减速滑行是指需要减速时,提前换入空档,不但可以省油,还可以减少机件的磨损,但是必须保证安全行车。

  • 佛山南海区桂城公租房申请地点(佛山市南海区桂城公租房)

    南海桂城街道最新公租房,一个位于智盈大厦A座公租房园区、一个位于禾仰广场1座1、2号楼公租房园区,现接受申请分配入住。符合条件的申请家庭从提交到分配入住整个流程只需7个工作日。申请地点:1、智盈大厦位于桂城街道佛平四路48号,邻近南海有轨电车1号线夏西站,生活配套设施完善。智盈大厦A座共19层,其中1-4层为商业办公配套用房,5层以上为配建公租房,现接受申请分配入住。