首页 分享 Python数据分析项目实例2:使用seaborn分析鸢尾花(Iris)数据集

Python数据分析项目实例2:使用seaborn分析鸢尾花(Iris)数据集

来源:花匠小妙招 时间:2024-12-02 22:55

iris数据集下载(免费):https://download.csdn.net/download/weixin_44940488/20718531

使用的分析软件:jupyter notebook

主要语法知识:Python数据清洗与整理、seaborn数据可视化。

1.  导入数据

from pandas import Series,DataFrame

import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

import matplotlib as mpl

import seaborn as sns

iris_data = pd.read_csv(open('数据iris-data.csv'))

iris_data.head()

      鸢尾花数据集经常用于及其学习(分类算法)的入门例子。其中,sepal_length_cm:为花萼长度; sepal_width_cm:为花萼宽度; petal_length_cm:为花瓣长度; petal_width_cm:花瓣宽度。

2.  定义问题

         通过数据可视化和分析,按照鸢尾花的特征分出鸢尾花的类别。其中涉及到的主要语法知识是数据清洗与整理。

3.  数据清洗

iris_data.shape

iris_data.describe()

 通过结果可以看出,共有150条数据,通过每个字段的平均值和方差,看不出有异常值。

iris_data['class'].unique()

iris_data.ix[iris_data['class'] == 'versicolor', 'class'] = 'Iris-versicolor'

iris_data.ix[iris_data['class'] == 'Iris-setossa', 'class'] = 'Iris-setosa'

iris_data['class'].unique()

        回到异常值处理中,这里分析可能是分类原因,数据都很均衡。下面利用seaborn绘制散点图矩阵。

sns.scatterplot(x='petal_width_cm',y='petal_length_cm',data = iris_data,

color='blue',marker='+',s = 20)

sns.pairplot(iris_data, hue='class')

 

iris_data.ix[iris_data['class'] == 'Iris-setosa', 'sepal_width_cm'].hist()

iris_data = iris_data.loc[(iris_data['class'] != 'Iris-setosa') | (iris_data['sepal_width_cm'] >= 2.5)]

iris_data.loc[iris_data['class'] == 'Iris-setosa', 'sepal_width_cm'].hist()

iris_data.loc[(iris_data['class'] == 'Iris-versicolor') &

(iris_data['sepal_length_cm'] < 1.0)]

       图中的sepal_length_cm数据很小,有可能是单位错误,这里输入的是以m为单位,通过与其他数据的比较,初步认定可能是单位设置问题。通过以下代码,对数据乘以100。

iris_data.loc[(iris_data['class'] == 'Iris-versicolor') &

(iris_data['sepal_length_cm'] < 1.0),

'sepal_length_cm'] *= 100.0

iris_data.isnull().sum()

iris_data[iris_data['petal_width_cm'].isnull()]

iris_data.dropna(inplace=True)

4.  数据保存

iris_data.to_csv('数据iris-clean-data.csv', index=False) 5.  数据探索

iris_data = pd.read_csv(open('数据iris-clean-data.csv'))

iris_data.head()

iris_data.shape

sns.pairplot(iris_data, hue='class')

iris_data.boxplot(column='petal_length_cm', by='class',grid=False,figsize=(6,6))

相关知识

Python数据分析项目实例3:使用matplotlib散点图分析鸢尾花(Iris)数据集
鸢尾花(iris)数据集分析
15 鸢尾花(iris)数据集分析
鸢尾花(Iris)数据集入门
python 鸢尾花数据集下载
iris鸢尾花数据集最全数据分析
机器学习案例——鸢尾花数据集分析
机器学习鸢尾花数据集
Python数据分析——寒假学习[1](鸢尾花数据集)
python实战(一)——iris鸢尾花数据集分类

网址: Python数据分析项目实例2:使用seaborn分析鸢尾花(Iris)数据集 https://www.huajiangbk.com/newsview830589.html

所属分类:花卉
上一篇: FoodAnalyst
下一篇: 15年学情追踪揭示大学生学习“悖

推荐分享