Orange:一个基于 Python 的数据挖掘可视化平台

news2024/12/23 18:10:09

本篇介绍一个适合初学者入门的机器学习工具。

Orange 简介

Orange 是一个开源的数据挖掘和机器学习软件。Orange 基于 Python 和 C/C++ 开发,提供了一系列的数据探索、可视化、预处理以及建模组件。

Orange 拥有漂亮直观的交互式用户界面,非常适合新手进行探索性数据分析和可视化展示;同时高级用户也可以将其作为 Python 的一个编程模块进行数据操作和组件开发。

Orange 由卢布尔雅那大学于 1996 年开发,从 3.0 版本开始使用 Python 代码库进行科学计算,例如 numpy、scipy 以及 scikit-learn;前端的图形用户界面使用跨平台的 Qt 框架。Orange 支持 Windows、macOS 以及 Linux 平台。

Orange 安装

首先,打开 Orange 官方下载页面Orange Data Mining - Download

下载页面提供了几种安装方式:

Miniconda,直接点击“Download”按钮,下载 Orange3-Miniconda-x86_64.exe 文件后双击运行。

Anaconda,如果系统已经 Anaconda 发行版,执行以下两个命令:

conda config --add channels conda-forge
conda install orange3

Python Package Index,执行以下命令:

pip install orange3

安装完成后,在命令行输入以下命令可以启动 Orange 图形界面:

orange-canvas
# 或者
python -m Orange.canvas

启动之后显示以下欢迎界面。

欢迎界面提供了新建、打开工作流(workflow)的快捷方式以及各种教程、示例和使用文档,关闭该界面就进入了 Orange 主界面。


示例教程

打开 Orange 主界面,左侧显示了默认安装时提供的许多机器学习、预处理以及可视化的算法,这些功能被划分为 5 个组件集(数据、可视化、模型、评估以及无监督算法)。

其中的组件包括:

  • 数据(Data):包含数据输入、数据保存、数据过滤、抽样、插补、特征操作以及特征选择等组件,同时还支持嵌入 Python 脚本。
  • 可视化(Visualize):包含通用可视化(箱形图、直方图、散点图)和多变量可视化(马赛克图、筛分曲线图)组件。
  • 模型(Model):包含一组用于分类和回归的有监督机器学习算法组件。
  • 评估(Evaluate):交叉验证、抽样程序、可靠性评估以及预测方法评估。
  • 无监督算法(Unsupervised):用于聚类(k-means、层次聚类)和数据降维(多维尺度变换、主成分分析、相关分析)的无监督学习算法。

另外,还可以通过插件(add-ons)的方式为 Orange 增加其他的功能(生物信息学、数据融合与文本挖掘。添加的方法是点击“Options”菜单下的“Add-ons”按钮,打开插件管理器。

然后勾选所需的插件,点击“OK”按钮进行安装;安装插件后有可能需要重启 Orange 才能在左侧出现。

Orange 主界面的右侧是一个工作区(canvas),用于放置各种组件并构成一个数据分析的工作流。我们可以组合左侧的组件实现读取数据、显示数据表、选择特征、训练预测器、比较学习算法以及交互式可视化等功能。为了方便初学者,Orange 提供了许多实用的工作流示例。

点击“Help”菜单下的“Example Workflows”按钮,打开工作流示例界面。

我们选择“Classification Tree”,这是一个用于分类的决策树示例。

我们可以通过示例中的说明了解每个组件的作用和工作流程,其中的组件包括:

  1. 打开数据文件的 File 组件,用于打开包含鸢尾花(Iris)数据集的文件,这是一个经典的数据挖掘数据集;
  2. 用于分类的决策树组件(Classification Tree),这是一个决策树算法;
  3. 分类树可视化组件(Tree Viewer),用于显示分类树的结果;
  4. 散点图组件(Scatter Plot),显示选定数据的散点图;
  5. 箱形图组件(Box Plot),显示选定数据的箱型图。
  6. 组件之间的连线代表了数据流的方向。

通过这些组件的简单组合,构建了一个交互式分类树浏览器。我们可以点击这些组件,对其进行设置和调整,例如文件组件:

文件组件可以加载数据文件或者在线 URL 资源,并且对每个数据属性的类型、角色等进行设置。分类树组件可以对决策算法进行设置:

 分类树可视化组件可以提供直观的分类结果:

散点图组件可以根据分类树可视化组件中选择的节点数据显示相应的散点图,实现同步刷新:

我们也可以从 Orange 官方网站下载更多的示例。Orange Data Mining - Workflows

对于初学者而言,只需要在 Orange 图形界面中通过拖拽加点击的方式就可以实现常见的数据分析、探索、可视化以及数据挖掘任务;对于高级用户,可以通过开发自定义的组件(Widget)实现扩展的功能,或者在 Python 中利用 Orange 代码库编写数据挖掘脚本程序。相关内容可以参考 Orange 官方文档。

参考:

Orange:一个基于 Python 的数据挖掘和机器学习平台_orange python_不剪发的Tony老师的博客-CSDN博客

入门教程:https://blog.csdn.net/weixin_39461079/category_12101011.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/773426.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

测试用例(3)

功能测试用例方法: 等价类 边界值 因果图 正交实验分解法 判定表驱动分析方法 非功能性的测试用例方法: 错误推测法 功能图分析方法 场景: 场景设计方法 1) 在任何情况下都必须使⽤边界值分析⽅法,经验表明⽤这种⽅法设…

CGT Asia嘉年华|3D细胞培养与类器官研发峰会10月广州召开

类器官指利用成体干细胞或多能干细胞进行体外三维(3D)培养而形成的具有一定空间结构的组织类似物,是近10年来干细胞领域发展最快的研究热点之一。2022年,FDA 通过现代化法案 2.0,批准全球首个完全基于“类器官芯片”研…

pandas 笔记:pivot_table 数据透视表\pivot

1 基本使用方法 pandas.pivot_table(data, valuesNone, indexNone, columnsNone, aggfuncmean, fill_valueNone, marginsFalse, dropnaTrue, margins_nameAll, observedFalse, sortTrue)2 主要参数 dataDataFramevalues要进行聚合的列index在数据透视表索引(index…

# Linux下替换删除文件中的颜色等控制字符的方法

Linux下替换删除文件中的颜色等控制字符的方法 文章目录 Linux下替换删除文件中的颜色等控制字符的方法1 Linux下的控制字符(显示的文字并不是他本身):2 颜色字符范例:3 替换4 最后 我们在shell编程显示输出时,会定义文…

【Java】一个简单的接口例子(帮助理解接口+多态)

要求: 请实现笔记本电脑使用USB鼠标、USB键盘的例子 1. USB 接口:包含打开设备、关闭设备功能 2. 笔记本类:包含开机功能、关机功能、使用 USB 设备功能 3. 鼠标类:实现 USB 接口,并具备点击功能 4. 键盘类&am…

人才输送|我的“捷码低代码工程师”转型之路!

最新职位 招聘岗位:低代码工程师 需求公司:上海北斗西虹桥基地 应聘条件:1、本科以上,最好硕士;2、有三年以上开发经验; 工作内容:带领团队用捷码低代码平台进行项目开发。 工作地点&#xff1a…

长城汽车Hi4技术品牌成果初现,大象转身必将势不可挡

今年1-6月,长城汽车销售52万辆,新能源车型销售9.3万辆,同比增长47%;智能新能源新产品密集上市,新能源销量与占比逐月攀升,6月销售超2.6万辆,占比突破25%,皆创历史新高; 全…

文档翻译成中文怎么弄?今天分享文档翻译免费要怎么弄

有一天,小华来到了一个外国小镇。然而,他发现镇上的路牌、菜单和旅游手册都是用外语写的,让他感到非常困扰。他不知道该去哪里游玩,也无法理解当地的文化和历史。他非常喜欢这个小镇的风景,但是他无法读懂他们这里的一…

【Linux -- 查看进程--ps,top,pstree】

Linux – 查看进程 文章目录 Linux -- 查看进程一、查看进程 -- ps二、动态查看进程的变化 -- top三、pstree -- 可以找进程之间的相关性总结 提示:以下是本篇文章正文内容,下面案例可供参考 一、查看进程 – ps 更详细的可以通过man ps查看 ps aux …

深入理解Java虚拟机(三)垃圾收集器与内存分配策略

Java与C之间有一堵由内存动态分配和垃圾收集技术所围成的高墙,墙外面的人想进去,墙里面的人却想出来。 Java内存运行时区域的各个部分,其中程序计数器、虚拟机栈、本地方法栈3个区域随线程而生,随线程而灭,栈中的栈帧随…

echarts图例对齐

富文本不生效,是没有设置lineHeight

【运维】shell监控脚本结合钉钉机器人实现服务及服务器监控告警

文章目录 前言一、监控shell脚本和钉钉机器人二、创建钉钉机器人:1.在钉钉群聊里点击设置2.在设置里点击机器人选项3.再点击添加机器人4.再点击选择自定义机器人5.设置机器人名称、是否加密、是否限制ip、以及触发关键字6.获取机器人的Webhook地址 三、编写监控脚本…

MySQL表关联更新

背景: 有两张表,一张class信息表,一张student信息表,但student表里的信息存在错误,需要用class表中的信息去更新student表数据。 方法一: update student_info s set class_name (select class_name fr…

一本通12951917:装箱问题

不知道说什么废话好了 题目 装箱问题 描述 有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品…

Spring 的依赖注入

Spring 的依赖注入 文章目录 Spring 的依赖注入每博一文案1. 依赖注入1.1 构造注入1.1.1 通过参数名进行构造注入1.1.2 通过参数的下标,进行构造注入1.1.3 不指定参数下标,不指定参数名字,通过自动装配的方式 1.2 set 注入 2. set注入的各种方…

uniapp 小程序 picker 日期时间段选择(精确到年月日时分+周几)

效果图&#xff1a; picker时间选择器 精确到年月日时分周几 需要引入moment.js&#xff0c;有可能引入后在项目内会报错&#xff0c;可以考虑把选择日期作为一个组件引入 1、timepage.vue组件封装 <template><view><picker mode"multiSelector" :va…

人才输送|捷码帮我走出求职迷茫期!

大家好&#xff0c;我是边文军。 很荣幸应余老师之邀&#xff0c;在这里和各位兄弟姐妹分享应聘青岛英哲低代码工程师的求职经历&#xff0c;希望能给大家提供点帮助。 01 自我介绍 先来做一个自我介绍吧&#xff01;我是计算机专业出身&#xff0c;学的移动应用开发专业。学…

【贪心算法part01】| 455.分发饼干、376.摆动序列、53.最大子序和

目录 &#x1f388;LeetCode455.分发饼干 &#x1f388;LeetCode376.摆动序列 &#x1f388;LeetCode53.最大子序和 &#x1f388;LeetCode455.分发饼干 链接&#xff1a;455.分发饼干 假设你是一位很棒的家长&#xff0c;想要给你的孩子们一些小饼干。但是&#xff0c;…

决赛结束,颁奖在即:2023隐私计算大会暨“星河杯”隐私计算大赛颁奖典礼震撼来袭!

7月11日-12日&#xff0c;首届“星河杯”隐私计算大赛4个赛题共计37支团队陆续完成决赛评审&#xff0c;决出的大赛获奖团队代表将受邀出席7月26日在青岛星河湾酒店举办的2023隐私计算大会暨首届“星河杯”隐私计算颁奖典礼。 2023隐私计算大会暨首届“星河杯”隐私计算大赛颁奖…

上海市静安区财政局领导带队调研合合信息,政企共话科技创新

近日&#xff0c;上海市静安区财政局副局长应文婷一行赴市北高新园区&#xff0c;实地走访科技企业上海合合信息科技股份有限公司&#xff08;简称“合合信息”&#xff09;&#xff0c;了解公司技术创新成果及产业布局&#xff0c;倾听企业在发展过程中的政策需求。合合信息董…