穿堂风~ 2023-04-17 17:24 采纳率: 100%
浏览 12
已结题

鸢尾花数据集的使用举例子

机器学习常用数据集鸢尾花数据集的使用举例子,同时对数据集进行相应的介绍。

  • 写回答

3条回答 默认 最新

  • 心无旁骛~ 人工智能领域新星创作者 2023-04-17 17:28
    关注

    鸢尾花数据集(部分),共计150条记录,包含 setosa,versicolor,virginica 三种花型。
    示例代码如下:

    # coding: utf-8
    
    from sklearn.neighbors import KNeighborsClassifier
    from sklearn.naive_bayes import GaussianNB
    from sklearn.linear_model import LogisticRegression
    from sklearn.svm import SVC
    from sklearn.tree import DecisionTreeClassifier
    from sklearn.ensemble import RandomForestClassifier
    from sklearn.neural_network import MLPClassifier
    from sklearn.model_selection import train_test_split
    from sklearn.metrics import classification_report
    from sklearn.datasets import load_iris
    import argparse
    
    # 根据参数选择模型
    ap = argparse.ArgumentParser()
    ap.add_argument("-m", "--model", type=str, default="knn", help="请输入模型简称")
    args = vars(ap.parse_args())
    
    models = {
        "knn": KNeighborsClassifier(n_neighbors=1),
        "naive_bayes": GaussianNB(),
        "logit": LogisticRegression(solver="lbfgs", multi_class="auto"),
        "svm": SVC(kernel="rbf", gamma="auto"),
        "decision_tree": DecisionTreeClassifier(),
        "random_forest": RandomForestClassifier(n_estimators=100),
        "mlp": MLPClassifier()
    }
    
    # 载入鸢尾花数据集,然后进行训练集和测试集的划分,75%数据作为训练集,其余25%作为测试集
    # random_state是随机状态,类似随机种子
    print("载入鸢尾花数据集...")
    dataset = load_iris()
    (trainX, testX, trainY, testY) = train_test_split(dataset.data, dataset.target, random_state=3, test_size=0.25)
    
    # 训练模型
    print("正在使用模型:'{}'".format(args["model"]))
    model = models[args["model"]]
    model.fit(trainX, trainY)
    
    # 预测并输出一份分类结果报告
    print("生成结果报告")
    predictions = model.predict(testX)
    print(classification_report(testY, predictions, target_names=dataset.target_names))
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月25日
  • 已采纳回答 4月17日
  • 创建了问题 4月17日

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。