精华内容
下载资源
问答
  • 本博客运行环境为Jupyter Notebook、Python3。...数据可视化包括散点图、直方图、KDE图、箱线图。 目录读取数据显示数据数据可视化 读取数据 从sklearn库中读取:(我使用的是该种办法) ,因为文件运行起来总缺少一
  • python-鸢尾花分类

    2021-04-21 17:19:32
    python-鸢尾花分类 import pandas as pd data_iris = pd.read_csv('iris.csv',index_col=0) #绘制直方图 import matplotlib.pyplot as plt data_iris.hist(figsize=(8,6)) plt.show() #绘制散点图(花瓣的长和宽)...

    python-鸢尾花分类

    import pandas as pd
    data_iris = pd.read_csv('iris.csv',index_col=0)
    #绘制直方图
    import matplotlib.pyplot as plt
    data_iris.hist(figsize=(8,6))
    plt.show()
    

    在这里插入图片描述

    #绘制散点图(花瓣的长和宽)
    plt.figure(figsize=(8,6))
    plt.scatter(x=data_iris['petal_l'], y=data_iris['petal_w'],c=data_iris['classes'])
    plt.show()
    

    在这里插入图片描述

    from sklearn.naive_bayes import MultinomialNB,BernoulliNB,GaussianNB#多项式朴素贝叶斯(适合离散数据分类),伯努利朴素贝叶斯(适合离散数据分类),高斯朴素贝叶斯(适合连续数据分类)
    from sklearn.metrics import classification_report #分类报告
    from sklearn.model_selection import train_test_split #划分数据集
    X = data_iris.iloc[:,:-1]#数据(花瓣长,宽,花萼长,宽)
    y = data_iris.iloc[:,-1]#标签(花种类用0.0,1.0,2.0表示)
    
    #调用分割函数,将数据集分为训练集和测试集20%
    X_tr,X_ts,y_tr,y_ts = train_test_split(X,y,test_size=0.2)
    
    #训练模型
    model = GaussianNB()#高斯朴素贝叶斯
    model.fit(X_tr,y_tr) #拟合(数据,标签)
    
    y_pred = model.predict(X_ts)
    y_pred
    print(classification_report(y_pred,y_ts))
    #precision(准确率):正确预测为正的,占全部预测为正的比例
    #recall(召回率):正确预测为正的,占全部实际为正的比例。
    #f1-score (f1值):精确率和召回率的调和平均数。
    #support 各分类样本的数量或测试集样本的总数量。
    

    在这里插入图片描述

    展开全文
  • Python-鸢尾花分析(matplotlib,pandas)

    热门讨论 2021-03-31 22:41:55
    Python鸢尾花分析(matplotlib,pandas) Matplotlib Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。通过 Matplotlib,开发者可以仅需要几行代码,便可以...

    Python鸢尾花分析(matplotlib,pandas)

    Matplotlib

    Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。通过 Matplotlib,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率谱,条形图,错误图,散点图等。

    Pandas

    pandas 是基于NumPy 的一种工具,该工具是为解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。

    散点图(借鉴)

    
    import pandas as pd
    import matplotlib.pyplot as plt
    plt.rcParams['font.sans-serif'] = ['SimHei']
    plt.rcParams['axes.unicode_minus'] = False
    
    # 读取数据
    data = pd.read_csv(r"C:\Users\CaoPengCheng\Desktop\Python\iris.csv")
    # 为散点图颜色做数组
    data['Category_num'] = data['Species'].map({'setosa': 55, 'versicolor': 9, 'virginica': 88})
    
    print(data.head(), '\n')
    
    # 查看特征组合对种类的区分效果
    fig2 = plt.figure(2)
    # scatter()方法
    # x,y:输入数据,array_like,shape(n,)
    # s:点的大小
    #   标量或array_like,shape(n,),可选大小以点数^ 2。默认是rcParams ['lines.markersize'] ** 2。
    # c:点的颜色
    # 顺序或颜色顺序,可选,默认:‘b’ c可以是单个颜色格式的字符串,也可以是一系列颜色 规范的长度为N
    # 或一系列N数字 使用通过kwargs指定的cmap和norm映射到颜色(见下文)。请注意,c不应该是单个数字RGB或RGBA序列,
    # 因为这与数组无法区分值将被彩色映射。 c可以是一个二维数组,其中的行是RGB或RGBA,但是,包括单个的情况行为所有点指定相同的颜色。
    
    plt.subplot2grid((3, 2), (0, 0))
    # 设置X轴标签
    plt.xlabel('Setal_length')
    # 设置Y轴标签
    plt.ylabel('Setal_width')
    plt.scatter(data.Setal_length, data.Setal_width, c=data.Category_num)
    plt.title("据萼片长度和宽度的种类分布图")
    
    plt.subplot2grid((3, 2), (0, 1))
    # 设置X轴标签
    plt.xlabel('Petal_length')
    # 设置Y轴标签
    plt.ylabel('Petal_width')
    plt.scatter(data.Petal_length, data.Petal_width, c=data.Category_num)
    plt.title("据花瓣长度和宽度的种类分布图")
    
    plt.subplot2grid((3, 2), (1, 0))
    # 设置X轴标签
    plt.xlabel('Petal_length')
    # 设置Y轴标签
    plt.ylabel('Setal_length')
    plt.scatter(data.Petal_length, data.Setal_length, c=data.Category_num)
    plt.title("据花瓣长度和萼片长度的种类分布图")
    
    plt.subplot2grid((3, 2), (1, 1))
    # 设置X轴标签
    plt.xlabel('Petal_width')
    # 设置Y轴标签
    plt.ylabel('Setal_width')
    plt.scatter(data.Petal_width, data.Setal_width, c=data.Category_num)
    plt.title("据花瓣宽度和萼片宽度的种类分布图")
    
    plt.subplot2grid((3, 2), (2, 0))
    # 设置X轴标签
    plt.xlabel('Petal_length')
    # 设置Y轴标签
    plt.ylabel('Setal_width')
    plt.scatter(data.Petal_length, data.Setal_width, c=data.Category_num)
    plt.title("据花瓣长度和萼片宽度的种类分布图")
    
    plt.subplot2grid((3, 2), (2, 1))
    # 设置X轴标签
    plt.xlabel('Petal_width')
    # 设置Y轴标签
    plt.ylabel('Setal_length')
    plt.scatter(data.Petal_width, data.Setal_length, c=data.Category_num)
    plt.title("据花瓣宽度和萼片长度的种类分布图")
    
    plt.tight_layout()
    
    plt.show()
    
    

    在这里插入图片描述

    折现图(原创,较冗余)

    
    import pandas as pd
    import matplotlib.pyplot as plt
    plt.rcParams['font.sans-serif'] = ['SimHei']
    plt.rcParams['axes.unicode_minus'] = False
    # 读取数据
    data = pd.read_csv(r"C:\Users\CaoPengCheng\Desktop\Python\iris.csv")
    i = 0
    virginica_Setal_length_List = []
    virginica_Setal_width_List = []
    virginica_Petal_length_List = []
    virginica_Petal_width_List = []
    
    setosa_Setal_length_List = []
    setosa_Setal_width_List = []
    setosa_Petal_length_List = []
    setosa_Petal_width_List = []
    
    versicolor_Setal_length_List = []
    versicolor_Setal_width_List = []
    versicolor_Petal_length_List = []
    versicolor_Petal_width_List = []
    
    while i < 150:
        if data.Species[i] in 'setosa':
            setosa_Setal_length_List.append(data.Setal_length[i])
            setosa_Setal_width_List.append(data.Setal_width[i])
            setosa_Petal_length_List.append(data.Petal_length[i])
            setosa_Petal_width_List.append(data.Petal_width[i])
        if data.Species[i] in 'versicolor':
            versicolor_Setal_length_List.append(data.Setal_length[i])
            versicolor_Setal_width_List.append(data.Setal_width[i])
            versicolor_Petal_length_List.append(data.Petal_length[i])
            versicolor_Petal_width_List.append(data.Petal_width[i])
        if data.Species[i] in 'virginica':
            virginica_Setal_length_List.append(data.Setal_length[i])
            virginica_Setal_width_List.append(data.Setal_width[i])
            virginica_Petal_length_List.append(data.Petal_length[i])
            virginica_Petal_width_List.append(data.Petal_width[i])
        i = i+1
    
    print(setosa_Setal_length_List)
    print(versicolor_Setal_length_List)
    print(virginica_Setal_length_List)
    
    virginica_Setal_length_List.sort()
    virginica_Setal_width_List.sort()
    virginica_Petal_length_List.sort()
    virginica_Petal_width_List.sort()
    
    setosa_Setal_length_List.sort()
    setosa_Setal_width_List.sort()
    setosa_Petal_length_List.sort()
    setosa_Petal_width_List.sort()
    
    versicolor_Setal_length_List.sort()
    versicolor_Setal_width_List.sort()
    versicolor_Petal_length_List.sort()
    versicolor_Petal_width_List.sort()
    
    fig2 = plt.figure(5)
    
    plt.subplot2grid((3, 2), (0, 0))
    # 设置X轴标签
    plt.xlabel('Setal_length')
    # 设置Y轴标签
    plt.ylabel('Setal_width')
    plt.plot(setosa_Setal_length_List, setosa_Setal_width_List, color='red')
    plt.plot(versicolor_Setal_length_List, versicolor_Setal_width_List, color='yellow')
    plt.plot(virginica_Setal_length_List, virginica_Setal_width_List, color='blue')
    plt.title("据萼片长度和宽度的种类分布图")
    
    plt.subplot2grid((3, 2), (0, 1))
    # 设置X轴标签
    plt.xlabel('Petal_length')
    # 设置Y轴标签
    plt.ylabel('Petal_width')
    plt.plot(setosa_Petal_length_List, setosa_Petal_width_List, color='red')
    plt.plot(versicolor_Petal_length_List, versicolor_Petal_width_List, color='yellow')
    plt.plot(virginica_Petal_length_List, virginica_Petal_width_List, color='blue')
    plt.title("据花瓣长度和宽度的种类分布图")
    
    plt.subplot2grid((3, 2), (1, 0))
    # 设置X轴标签
    plt.xlabel('Petal_length')
    # 设置Y轴标签
    plt.ylabel('Setal_length')
    plt.plot(setosa_Petal_length_List, setosa_Setal_length_List, color='red')
    plt.plot(versicolor_Petal_length_List, versicolor_Setal_length_List, color='yellow')
    plt.plot(virginica_Petal_length_List, virginica_Setal_length_List, color='blue')
    plt.title("据花瓣长度和萼片长度的种类分布图")
    
    plt.subplot2grid((3, 2), (1, 1))
    # 设置X轴标签
    plt.xlabel('Petal_width')
    # 设置Y轴标签
    plt.ylabel('Setal_width')
    plt.plot(setosa_Petal_width_List, setosa_Setal_width_List, color='red')
    plt.plot(versicolor_Petal_width_List, versicolor_Setal_width_List, color='yellow')
    plt.plot(virginica_Petal_width_List, virginica_Setal_width_List, color='blue')
    plt.title("据花瓣宽度和萼片宽度的种类分布图")
    
    plt.subplot2grid((3, 2), (2, 0))
    # 设置X轴标签
    plt.xlabel('Petal_length')
    # 设置Y轴标签
    plt.ylabel('Setal_width')
    plt.plot(setosa_Petal_length_List, setosa_Setal_width_List, color='red')
    plt.plot(versicolor_Petal_length_List, versicolor_Setal_width_List, color='yellow')
    plt.plot(virginica_Petal_length_List, virginica_Setal_width_List, color='blue')
    plt.title("据花瓣长度和萼片宽度的种类分布图")
    
    plt.subplot2grid((3, 2), (2, 1))
    # 设置X轴标签
    plt.xlabel('Petal_width')
    # 设置Y轴标签
    plt.ylabel('Setal_length')
    plt.plot(setosa_Petal_width_List, setosa_Setal_length_List, color='red')
    plt.plot(versicolor_Petal_width_List, versicolor_Setal_length_List, color='yellow')
    plt.plot(virginica_Petal_width_List, virginica_Setal_length_List, color='blue')
    plt.title("据花瓣宽度和萼片长度的种类分布图")
    
    plt.tight_layout()
    
    plt.show()
    
    

    在这里插入图片描述

    展开全文
  • 数据集资源下载链接(未上传,稍后审核通过就可以了) 之前一直给徒弟写答案作为参考,有好多人都关注...读取鸢尾花数据集使用循环和子图绘制各个特征之间的散点图 import numpy as np import matplotlib.pyplot as p.

    在这里插入图片描述

    数据集资源下载链接

    之前一直给徒弟写答案作为参考,有好多人都关注了我,估计是为了拿作业答案。最近有粉丝私信要答案了,徒弟没给我题目,自己把题做了。可以可以!

    这次的作业就拿徒弟的答案来发吧~

    来拿答案的你可关注一波我的徒弟 潇囧囧_的博客,平常你们上课的一些知识他都会总结的,你们可关注他去看他的文章!

    答案源码:

    (1).读取鸢尾花数据集使用循环和子图绘制各个特征之间的散点图

    import numpy as  np
    import matplotlib.pyplot as plt
    
    iris = np.load('D:\Downloads\iris.npz', allow_pickle=True)['data'][:, :-1]
    name = np.load('D:\Downloads\iris.npz', allow_pickle=True)['features_name']
    
    plt.rcParams['font.sans-serif'] = 'SimHei'
    p = plt.figure(figsize=(16, 16))
    plt.title('iris散点图矩阵')
    for i in range(4):
        for j in range(4):
            p.add_subplot(4, 4, (i * 4) + (j + 1))
            plt.scatter(iris[:, i], iris[:, j])
            plt.xlabel(name[i])
            plt.ylabel(name[j])
    plt.show()
    

    在这里插入图片描述

    (2).绘制各个特征的箱线图,查看是否存在异常值。

    # 箱线图
    import numpy as np
    import matplotlib.pyplot as plt
    plt.rcParams['font.sans-serif']='SimHei'
    plt.rcParams['axes.unicode_minus']=False
    data = np.random.normal(size=100, loc=0, scale=1)
    plt.boxplot(data, sym='o', whis=0.05)
    print(data)
    plt.show()
    

    在这里插入图片描述

    欢迎关注公众号【夜来疏影】
    在这里插入图片描述

    展开全文
  • 读取鸢尾花数据集使用循环和子图绘制各个特征之间的散点图 import numpy as np import matplotlib.pyplot as plt iris = np.load('d:/tmp/iris.npz',allow_pickle=True)['data'][:, :-1] name = np.load('d:/tmp/...
    1. 读取鸢尾花数据集使用循环和子图绘制各个特征之间的散点图
    import numpy as  np
    import matplotlib.pyplot as plt
    
    iris = np.load('d:/tmp/iris.npz',allow_pickle=True)['data'][:, :-1]
    
    name = np.load('d:/tmp/iris.npz',allow_pickle=True)['features_name']
    
    plt.rcParams['font.sans-serif'] = 'SimHei'
    p = plt.figure(figsize=(16, 16))
    plt.title('iris散点图矩阵')
    for i in range(4):
        for j in range(4):
            p.add_subplot(4, 4, (i * 4) + (j + 1))
            plt.scatter(iris[:, i], iris[:, j])
            plt.xlabel(name[i])
            plt.ylabel(name[j])
            
            
            
    plt.savefig('d:/tmp/矩阵.png')       
    plt.show()
    

    在这里插入图片描述

    1. 绘制各个特征的箱线图,查看是否存在异常值。
    # 箱线图
    import numpy as np
    import matplotlib.pyplot as plt
    plt.rcParams['font.sans-serif']='SimHei'
    plt.rcParams['axes.unicode_minus']=False
    data = np.random.normal(size=100, loc=0, scale=1)
    plt.boxplot(data, sym='o', whis=0.05)
    print(data)
    plt.savefig('d:/tmp/特征箱线图.png')   
    plt.show()
    

    在这里插入图片描述

    展开全文
  • 鸢尾花数据python绘制散点图,雷达图,轮廓图,调和曲线图等
  • 上面的代码是通过鸢尾花代码改过来的,想用UCI上的其他的库,但是输出的散点图x,y轴一直是乱序的 非常感谢大佬能够提供一些帮助,谢谢!!!   如下图: <p>...
  • 原生python实现knn分类算法,用鸢尾花数据集。 2.算法设计 首先需要设置数据集(以50个为例),然后在程序中导入数据集,根据数据集画出散点图。另外还需要定义两个函数,其中一个函数来计算两个数据点之间的欧氏...
  • 一,鸢尾花Iris数据集解析参考博文:...二,Python使用meanshift聚类,并绘制聚类散点图。 from sklearn.cluster import MeanShift from sklearn import datasets import matplotlib.pyp...
  • 用原生python语法实现K近邻算法,了解K近邻法的实际操作内核,并用自带鸢尾花的集合验证K近邻算法,并掌握运用散点图的绘制 先对KNN算法做了解: 源代码获取: ...
  • 准备工作在分析多变量数据时...iris数据集有150个实例(3类鸢尾花各50条记录)和4种属性(花萼长度、宽度和花瓣长度、宽度)。操作方法#导入相关库 from sklearn.datasets import load_iris import numpy as np import matp
  • 类似于鸢尾花数据可视化的处理(参考博文鸢尾花数据进行可视化展示)的处理方式,我们先把datasets的数据转换成我们熟悉的DF数据,这一次,我们是用python自带的matplot库中的方法来绘制散点图。具体的代码如下所示...

空空如也

空空如也

1 2 3
收藏数 45
精华内容 18
关键字:

python鸢尾花散点图

python 订阅