盖伯瑞尔哈,MathWorks
数据库资源管理器应用程序桥接访问关系/ SQL数据并在MATLAB中分析它的进程®.它的可视化界面允许您快速地将数据拉入一个MATLAB友好的表格格式,而不需要知道微软®SQL编程语言。然后,您可以使用其他MATLAB工具和函数轻松地执行后续分析,以及自动生成代码来检索数据库结果,因此其他人可以重现您的工作。
看到更多信息在数据库资源管理器应用程序。
数据库工具箱使您能够将MATLAB知识应用于数据库中存储的数据,即使您不熟悉数据库语言。Database Explorer应用程序体现了Database Toolbox的这一价值,本视频将为您提供该应用程序的快速而全面的概述,它允许您以可视化方式与关系数据交互。即使您不熟悉SQL,也可以将这些数据带入MATLAB进行进一步分析。
最重要的是:它在哪里?只要打开“应用程序”选项卡,如果你遇到一大堆不同的应用程序,只要用“数据库”这个词搜索就可以了。
此演示功能具有MySQL数据库,我们首先需要设置连接。从“连接”菜单中选择此选项,然后填写相应的详细信息。特别是,您需要将MATLAB指向数据库驱动程序的位置,这通常是JDBC连接的JAR文件。如果您不知道这些参数,只需与您的IT联系取得联系以提供详细信息。
我们将测试连接提供我们的用户名和超级机密密码。既然测试成功了,我们就可以开始了。
让我们正式连接到我们的数据库,现在我们在connect菜单中找到它。我们将提供凭据,在我们的示例中,目录是toy_store。有了它,我们都准备好去探索了!
左边的面板列出了在数据库中找到的所有表,如果我们选择一个,我们将看到数据的预览,以及生成该结果的SQL查询;如果您想学习一些SQL,那么这是一个非常好的学习工具。我们可以展开表并查看列列表,以获得更完整的数据库视图,还可以根据希望看到的内容选择和取消选择列。我们还可以更改数据预览中显示的项目数。
让我们看看一些基本的功能。库存表的结果目前是按产品编号排序的,但我们可能想按其他东西排序,比如价格。只需点击“order by”,选择Price列,添加这个,现在我们可以轻松地使用升序或降序价格查看结果。
所以我在看这些数据,我在想,“伙计,能知道这些产品到底是什么真的很好,因为从描述的角度看,产品编号是无用的。”如果我切换到产品表,我注意到有一个productDescription列,这似乎是我想要的。但在当前视图中,我无法选下载188bet金宝搏择信息具有库存表。
为此,我们需要连接表,这是一个非常常见的SQL操作。我们只需选择第一个表,然后单击Join。我们将选择要连接的表,然后选择两个表中都存在的列;否则我们的结果就没有多大意义了。默认情况下,这将执行一个内部连接,这通常是您想要的,因为它给出了表的交集。您还会注意到右下角的图表,它直观地帮助您了解正在发生的事情。现在我们已经完成了这些,我们可以以任何有助于增强我们对数据理解的方式查看和选择这两个表的内容。
所以在这一点上,假设我的老板进来说,“我需要你告诉我我们2月份的总销售额。”salesVolume表中有一个2月份的列,所以这可能就是我想要的。由于我也有价格信息,我可以将它们相乘,然后将每个结果相加,得到最终答案。
但请记住,我无法获得所有内容的完整视图,因为我们还没有加入表格;我们需要对已经加入的结果进行额外的加入。我们注意到sales volume表没有product number列,但是做有一个库存编号列,如果您注意到,它也包含在产品表中。
因此,让我们在这个共享列上执行另一个连接。注意该图已更新,展示我们正在发生的事情,现在在我们返回时,我们可以在另外两个上下文中完全访问销售卷表。我们将继续向我们的查询添加一些列,现在我们拥有一个地方的信息,以获得2月或任何月份的总销售额。
有一个问题:我们有一些丢失的数据,由这个NaN表示。无论我们处理缺失数据的政策如何,确保以一致的方式处理缺失数据都是一件好事。
这就是导入选项发挥作用的地方。如您所见,对于任何double类型的数据,默认情况下都将数据导入为NaN,但我们可以将特定列改为导入0。另一个例子是,请注意,目前正在将inventoryDate作为字符导入,但将其指定为dateTime更有意义,dateTime自带一个菜单,在该菜单中,我们可以完全按照自己的意愿格式化日期时间。
现在我们的数据已经清理完毕,可以为我的老板执行分析了。如果您是一个SQL专家,实际上您可以完全在SQL中执行所有的计算,但如果我们仅仅利用现有的MATLAB知识,可能会更容易。数据库资源管理器允许我们将数据以表的形式导入MATLAB。我们将首先清理选定的列,导出数据并查看一下。
我们所要做的就是取价列和2月列的DOT产品,这为我们提供了每件商品的总销售额,所有这些项目的总和给了我们答案。
现在,我可以继续向我的老板发送结果并将结果发送给我,或者我可以更好地对待他,给他每个月的总销售,甚至一年,因为它真的并不是那么困难。
您可以在MATLAB中可以执行的一个诀窍是从表中提取多个列到矩阵,允许您执行矩阵操作。在这种情况下,我们需要第1列:价格,以及相应销售量的第5栏5到16。我们将将价格数据作为向量提取,然后将所有销售数据作为矩阵。每行代码中的第一个冒号指示我想要所有行,下一个参数指示我的感兴趣的列。请注意,我正在使用支架表示法将数据作为数组或矩阵,而不是表格。
现在我们可以简单地使用点*运算符将price数组中的点积应用到每个月上。对这个矩阵求和就得到了每月的销售额。求和那矩阵,我们已经为整年销售了销售,易生物,希望我可以向我的老板发送电子邮件,让他开心。
既然这是一个数据库资源管理器应用的演示,为什么还要费劲地看这些MATLAB代码呢?除了向你们展示一些新的编码技巧,我想强调的是,有相当多的分析可以应用到你的数据中。您已经有了这个很棒的设置,但您可能已经忘记了如何检索所有数据。对你的同事和未来的自己来说,能够复制你的成果是很重要的。
DatabaseExplorer只需单击一下就可以生成一个MATLAB脚本,该脚本将完成我们刚才为从数据库中获取数据所做的一切。
值得注意的是这个应用程序不保存出于明显的安全原因,用于连接到数据库的密码。因此,任何使用此代码的人都需要在这一行代码中提供适当的凭据,如果您观看此视频的是任何一种正派的人,您现在将目光从计算机屏幕移开,这样您就不会看到我的超级机密密码是“matlab”。向下滚动,然后……好的,您可以再次查看。
为了完成这个脚本,让我们加入我们的MATLAB工作。为了清晰起见,我们将创建一个新的部分,粘贴到我们的命令行工作中,现在任何未来的同事和我们未来的自己都可以轻松地复制我们的结果。
因此,我们已经演示了基本的数据库资源管理器工作流:可视化地与您的数据交互,将其带入MATLAB,执行您的分析,并使其可重复。
以下是一些您可能发现有用的数据库资源管理器功能:
您可以生成用于检索结果的SQL查询。
您可以使用Where语句过滤数据库项。例如,让我们说我只是想看到所有廉价的物品,就像任何价格低于10块钱的东西一样。点击在哪里,我们会说我们想要的价格......少于......无论你想要什么,实际上。如果您需要聪明,您甚至可以将其与其相应的值进行比较,但是我们将使用10,现在我们看到这些项目。
这些选择绝不是相互排斥的。你可以连接按一个列排序的表,当另一个列大于20时,没有重复……你可以在SQL中这样做。
最后,但并非最不重要的一点是,如果您熟悉SQL,可以直接编辑SQL查询。这为您提供了语言的全部好处,我们的按钮可能无法直接启用这些语言,同时仍然能够通过与应用程序交互自动生成SQL。
当我们点击“手动”时,它会保留我们间接生成的任何SQL代码,现在您可以输入任何您想要的内容。请注意,这在数据库资源管理器中打开了一个新选项卡,作为一个独特的工作环境。实际上,您可以在同一个数据库或其他数据库中有多个会话;只需使用“新建查询”按钮,您仍然可以保留对以前工作的访问权限。
使用Database Explorer轻松访问和分析您的关系数据,即使您不知道SQL,如果您这样做,利用它。感谢您的观点,单击描述中的说明中的链接,并不犹豫离开我们的反馈。