问专家:从MATLAB调用Python库
MATLAB®与许多编程语言提供了灵活、双向集成更大的开发团队之间的协作。在这个会话中,我们回答关于如何调用Python的问题®图书馆从MATLAB,反之亦然,包和分发您的MATLAB程序,等等。
你好,欢迎来到MATLAB与Python问专家会议。几周前,我和蒋禄卡通过MATLAB的集成与Python(听不清)的例子如何调用一种语言从另两个方向。
研讨会后,我们可以看到相当多的问题,我们计划在今天的会议上讲话的帮助下我们的内部主题专家。蒋禄卡,你想介绍我们的客人吗?
是的。确定。首先,让我向大家问好和感谢你们今天来到这里,加入这次会议。我们的客人是Yann r, MATLAB的产品经理。和他的工作重点是MATLAB和Python之间的集成。
在加入MathWorks之前不到一年前,Yann在一个开源的软件公司工作。所以他是这方面的知识,特别是在Python的一面。你好,Yann。我可以看到你。你能听到我们吗?
你好,蒋禄卡。你能听到我吗?
是的。是的。我能听到你。
谢谢你邀请我。
谢谢你,Yann,加入我们。今天(听不清)回答上面的问题我们已经收到在过去的日子。如果在今天的会话的一些观众有问题,不要犹豫,与我们分享你的问题。你可以把问题问答面板上的任何时间在会议期间。
很多情况下,这两种语言是最好的平衡集成软件解决方案。MATLAB与Python提供了一个灵活的双向集成。问题我们讨论如何从Python和调用MATLAB如何调用MATLAB的Python库。我们得到了关于如何设置和连接这两个环境。
然后我们问我们如何在MATLAB中使用我们现有的Python代码,我们可以从Python调试和管理错误。
和我们有同样的问题在如何将现有TesorFlow Keras模型转换为使用MATLAB的神经网络工具箱进口国TensorFlow Keras模型。一些仿真软金宝app件用户正在寻找一些信息如何从Python脚本运行仿真软件模型处理模拟输入。
然后我们也问了很多如何管理这两种语言之间的数据交换,最后,我们如何部署和共享的应用程序是基于MATLAB和Python。所以我认为我们可以开始。Yann,您应该能够分享你的屏幕任何第二。所以我会等,同时,为了实现这一目标。弗朗西斯卡应该让你主持人。
开始时,我们得到了安装过程中相关的几个问题,特别是关于从MATLAB调用Python函数有时用户很难得到这个工作。所以我希望你能问,Yann,如果你有一些技巧分享在这方面。
当然可以。所以我希望你现在能看到我的屏幕。我总结了一些建议在这种情况下,我们通常给。前三个是如何从MATLAB调用Python和如何设置一些环境,即pyenv函数。
所以我要做的就是我要通过他们所有人。我要分享我的环境,我的MATLAB环境。你会看到更多的交互,因此首先pyenv函数,然后进入所有代码路径,和检查环境设置取决于你Python设置。
让我分享我的MATLAB。所以你应该看到现在。所以我要清楚控制台。我要做的就是我要叫pyenv函数。正如你所看到的,我不需要给它任何参数。只是要找到我的Python版本安装。在这里,它是一个蟒蛇版本,3.7。
事实证明,我确实有其他版本安装。所以我也可以有一个pyenv。在这里,你可以看到,不同的版本。在这里我要调用的版本。让我们试试3.8。我相信我安装了3.8。
所以你可以看到,那么简单的,我可以在不同版本之间进行切换,我安装在本地电脑。它给了我很多的灵活性。所以我们用的(听不清)在2019年之前版本。如果你看看pyenv的文档,您将看到我们建议不再使用这个2019年B .现在我们推荐使用这个新版本在2019年引入了B。
还有一种称之为Python作为执行模式的过程。这种模式的原因我们介绍最近是因为有时库之间有冲突,底层库,用于数字NumPy等。Numpy附带蟒蛇。
有时是相互冲突的,我们自己的基础库。所以在这种情况下,您可能希望尝试执行模型的过程。但经常违约,我建议坚持执行模式的过程。这就是pyenv。
确保一切都在路径。很棘手,因为你最终管理有不同的路径,即你的环境变量。如果我把这里路径,您可以编辑系统属性,环境变量。你要确保在你的路径的不同版本的Python是可用的。
现在你可以看到,蟒蛇版本停留在我的上方。这意味着如果我打电话给在命令Python版本的名字,你会看到第一个版本是3.7。这是我附带蟒蛇。
你可以调用另一个版本。你也可以查看可用的不同版本的Python Python。我迷惑一些Linux和Windows之间的命令行。所以在这里你可以看到,第一个版本是蟒蛇。这里我也我在网上下载的3.8版本。这就是它。
所以还有什么?检查环境设置取决于你如何设置Python。我想我们了。现在让我们开关如何如何调用MATLAB从Python和如何选择不同的MATLAB引擎版本。
为了做到这一点,让我们看一下文档。所以你有两个主要页面。如你所见,我已经促使在文档中我看着它就在研讨会之前。你有一个页面。我要直走到这里。
一页从Python调用MATLAB。这里位于外部语言接口,以同样的方式可以调用MATLAB c++, Java,等等。你也可以在这里看Python库在MATLAB如何从MATLAB调用Python MATLAB从Python函数。
所以他们是在两个方向的引用。(听不清)在这个Python库在外部语言MATLAB接口。在这里你可以回到前两个。你可以在这两个之间来回。
(听不清)
我认为我们有一个麦克风。
(听不清)
对不起我不明白(听不清)。
在这里,我想告诉你—
(听不清)
我可以请求,请,你关掉你的麦克风吗?所以从API和安装MATLAB引擎API,所以我们有一个请求有关不同版本。这是一个非常简单的方法关于如何安装引擎API。让我告诉你,很快,它是如何工作的。
所以你需要知道你的MATLAB在哪里安装。为此,您需要输入MATLAB根找出MATLAB安装。这是我的MATLAB的位置。现在请记住,如果你看看这里,你需要管理员权限来执行这些命令。
所以我要做的是我去打开水蟒提示管理员。在这里,我要做的就是我要CD到前面的位置。我知道它是位于走读生。再次是哪里?好吧,让我的CD。我认为这是因为我不应该使用这些类型的引用,而是那些。现在在这里,现在的工作。
所以走读生。我们有Python和Java。我要选择——没有。我们有引擎。然后我们有Python或Java。这是位置——如果我只是看看,我有setup . py。非常简单的方法只是Python setup . py。安装。这是要安装这个MATLAB引擎的版本。
但如果你想同时安装了不同的版本,现在不会显示。但是你可以前缀这个位置要安装这个包。它要做的是,从本质上说,它将在另一个位置安装这个包。我以前玩过。所以我可以带你在我的文件夹在今天与MATLAB的Python。
实际上,我安装了——不是这里。这是其他演示,其他PID。我已经安装了MATLAB 20 b py30 3.7。这里的所有库。所以如果我进入这个前缀与一个特定的文件夹名称。我们继续好吗?蒋禄卡,你觉得和弗兰西斯卡吗?
我们有一个问题。(听不清)一个很常见的问题。它是一些难以确定的Python安装。问题是,如果我跑(听不清)环境中,我得到一个空的答案好像(听不清)安装在我的电脑上。任何建议吗?技术支持。金宝app
所以我说,是的,你可以打电话给技术支持。金宝app他们有很好的经验,解决所有这些问题。他们有一个非常大的知识库。所有的这些问题,他们将它存储到一个中央知识库。所以他们很轻易能回答这样的问题。
如果不是,那么他们可以调用本地专家如蒋禄卡和弗兰西斯卡在意大利,特别是如果你想有一个谈话在意大利。因为不幸的是,对不起,我今天不能和你说意大利语。如果不是,那么蒋禄卡和弗兰西斯卡将会打电话给我。我们可以解决这个问题。
对于这个问题,我想说,它可能与你的windows路径。所以,你想通过path环境变量。你想确保你有你的Python,也位于这里,离散目录。这两个需要位于你的路径通过MATLAB被发现。
其他问题吗?
是的。我认为这是时间到达下一节。下一节是关于从MATLAB调用Python。这是主题的列表。所以Yann,你能和我们分享一些调用MATLAB的建议标准
图书馆和用户定义的Python模块?任何建议如何将Python熊猫数据帧MATLAB数据类型?
让我们一个接一个。我要开始通过访问刚从MATLAB Python标准库模块。然后我要写一个非常小的用户定义函数,我说我要调用一样。我将向您展示如何修改这个函数。然后你可以重新加载模块。然后我们去(听不清),我将向您展示如何与熊猫和交换数据帧也从TensorFlow导入模型。
首先,这是一种方式,我将展示给你现在只是倔强地——如何调用不同的方法。这让我清楚。我要清楚和明确的控制台。我们从头开始。
首先,我要做的就是我要,所以py点模块的名称。例如,我将使用一个数学模块包含Python和直接在基地如sqrt函数,的平方根42。这里它是调用这个函数,使转移,并给它回MATLAB,和翻译实际上是一个MATLAB数据类型、自然。
这是一种非常容易。我们能做的是,让我回到这个库中,我添加一个问答更有趣的例子。我有什么呢?这里mymod。所以我开发了一个非常简单的基本模块。它叫做mymod。我有两个函数,搜索和希瑟。让我们开始搜索功能。
所以我要做的首先是我要定义一个列表l等于py.list。这是一个方式来定义列表在Python中,Python列表,从MATLAB。首先我要给它一个名字,所以弗朗西斯卡——请告诉我如果我拼错你的名字——蒋禄卡,现在和我自己。好的。
我忘了它的现场效果。所以我需要把它(听不清)之间的转换,因为我做错了什么?不。我的意思是说这个。所以我想分配,而不是比较。
所以在Python列表和一个数据类型之间的转换在MATLAB是细胞。所以相当于一个列表是一个细胞。原因是,在一个列表,你可以有一个异构类型的数据包括在内。你可以第一个数据是一个字符串,第二个是一个浮点数,第三是整数。为了反映这种异质性,我们在MATLAB中使用细胞。
所以这就是我很容易定义列表。现在我要叫py。mymodule里点搜索。这是函数的名称。有趣的是,你可以看到,因为有一个搜索mymod自动完成。发现我有什么功能。
这里,我要搜索这个列表中。你可能会看到它。给我背单词,包含”,“所以蒋禄卡和弗兰西斯卡。现在我有另一个函数,希瑟。只是要追加希瑟的名字,我的同事。
所以我要做的是,相反,我将l。附加希瑟。这是要做一样的这个函数。所以我要叫它l2和Python(听不清)类型没有财产。
似乎我做错了什么事。可能是因为我给它的原因,这很有趣。让我们试试这个。我要做的就是我要叫py.mymod.heather。我要给它l。现在工作了。有什么做得不对。
我回到这里。这是一个列表。我想添加一个新的名称。在这里,我能做什么,是这个列表转换为一个单元。我刚才已经告诉过你,我们能做的是,我将这样做。现在让我告诉你(听不清)。
我要把这个列表。我要做的,是我要用一个细胞的乐趣。这是一个函数应用于细胞。我将使用一个函数的字符串的开始。我要给它的细胞——不,我要给你。我将得到的细胞l。就是这样。
所以你可以看到,这个函数,如果我只是叫细胞。l,它给了我一个细胞数组。但在单元阵列,我在每一个有py字符串元素。我做的是我称之为添加字符串,该字符串函数,将这个细胞转变为一个字符串数组而不是一个细胞。这是一个非常简单的转换类型。我们继续好吗?
所以你可以问文档。让我告诉你。py。list.append的帮助。我认为我需要给它,在这里,报价。这是一个方法调用Python在MATLAB中直接命令的帮助。你可以看到使用的方法添加在名单上。所以你可以添加一个新对象列表的最后。
现在如何创建元组字典类型列表。我不会显示任何东西。所有这一切你可以找到在文档中。向前,我们将这些幻灯片,这样你可以有这个表查看列表之间的转换,在MATLAB如何定义、元组和字典。
现在让我们来修改这个脚本。我们叫它。我们要做什么,在这里你可以看到如何附加py.sys.path。所以还有一个Python的具体路径。现在让我告诉你,py.sys。Sys是一个系统模块有一个名为路径的函数。如果我打电话这一点,你只会得到一个列表的所有位置Python是寻找为了执行一个脚本。
这里,我们的想法是如果当前搜索——打印当前目录当前目录是在Python的道路。如果它不是,那么我们可以插入它。这是一个好方法来指定Python,搜索我们的用户定义的模块。让我们继续。
这里,我们已经看到了。现在,我们将看到如何重新加载这个模块。比如现在,我没有在mymod,我没有任何测试函数。如果我给这样无法解决。因为我没有这个函数。
所以我要做的是在这里我要定义一个新的函数。不需要任何东西。它只是返回版本1叫再见。所以我要保存。但问题是,现在我打电话。它仍然不知道。因为我加载之前,现在我需要做的是我需要明确的类。
所以我清除所有的类。我将需要调用的Python模块叫做importlib。(听不清)叫做importlib。它只是不——它不知道它完成。我在寻找汽车完成。
现在我可以有一次指定模块的名称。有嵌入式进口模块在Python中,使您可以导入一个模块。在这里,它是mymod。所以我要给这个变量mod。所以我导入它。
我要做的就是我要py.importlib。重新加载mymod。所以importlib(听不清)。重载和国防部,它不工作。似乎有一个问题。是的,有一个问题在13号线。我忘了这个。我保存它,做所有这一切。现在重新加载。
现在你可以看到,这个模块有三个功能。之前有两个功能。现在有三个功能。所以现在我可以叫mymod.test。那就这样吧。再见。只有一个词,我知道在意大利。伊莎贝拉。所以我要做一遍。明确的类。 Import it and reload it. And now, if I call mymod, it's ciao bella.
现在你知道如何迭代开发一些Python代码。再次,所有的这些都是你可以找到的文档。我们有其他类型的问题相关的现在,旧金山或蒋禄卡,你要我的地址吗?
好吧,我们聊天有问题。所以问题是,我们需要任何MATLAB额外的包来执行任务,你在这个会话。
是的,这是个好问题。我没有地址,直接从一开始。只不过你需要MATLAB。这只是我显示你目前为止。只有与MATLAB基础。
我认为你可以继续。我现在没有其他任何问题。
所以更加喜欢我们去进一步调试的方向。所以你可以发现自己在一个不舒服的情况。你有这样的消息如无法解决py.myfunc名称。这是发生在我身上的东西。我认为你可能还记得这里,无法解决这个名字。
所以可能有几个原因。我试着列出他们在发生,假设在发生概率。从非常基本的,它可能是Python没有安装这一事实。和MATLAB不能找到它。我们之前有一个问题是这样的。我建议你回到这部分文档。
这里甚至有一个链接,你有不同的故障诊断的方法,确保Python安装和确保MATLAB可以找到Python。所以,如果你想确保这是一个情况下,你可以给它可执行文件的路径。只要确保你给它的版本,然后在你的机器上您的Python可执行文件所在。
可能有,另一个场景。所以我们我们之前提到的。你现在可能不是您的文件所在的目录。在这种情况下,我建议你使用py.sys。路径为了设置路径,Python是寻找这个模块。所以,这些问题的路径非常(听不清)。所以你会很快的专家。
你希望能够测试与py像我一样。importlib点导入模块。确保你可以导入这个模块。如果你是,那么它意味着您的MATLAB知道如何找到它。但它可以更烦人,更可能有一个错误在你的文本提示消息。
这就是我之前。如果我回去我忘了,例如,输入一个冒号,然后这里有这种错误。所以确保在这里提到的Python错误。所以我们去进一步向您展示如何在Python中处理异常。
这里我们会引发问题。让我退出演示模式,只是选择这个。我的表现在哪里?这里的。所以我要选择这个例子。在这里,我们创建一个列表。这里将会有一个错误消息。我要告诉你,现在。
正如您可以看到的,我们有三个参数。和我们预期的只有一个。我认为你们可能会想起以前,也许我们可以问观众是否跟随。蒋禄卡,或者你和弗兰西斯卡,你有一个想法在我们这里遇到什么样的问题列表的定义?
语法。
因为记得,我定义了一个列表,Python列表之前与你的名字,与弗朗西斯卡,蒋禄卡,和我自己。我给了,
花括号。
花括号。完全正确。(听不清)所以,你需要给它花括号。原因是通信,不同的数据类型,至少在Python中,表示在MATLAB细胞。所以你需要通过一个细胞。所以这是期待一个参数是一个细胞。相反,我们给它三个参数。这不是MATLAB预计。
让我们修改这个,花括号,再校准。这里你去。所以现在你可以看到,我们可以异构数据类型,x, y,这个数字是一个浮点数表示。所以给你。所以你可以向前,有这些类型的错误从Python MATLAB代码中直接处理。让我们继续。
如果你想进入更深的调试和,例如,Visual Studio,有一个方法,你可以把MATLAB的过程,(?MATLAB的executation ?]。在这里你可以设置断点在Python代码中为了这调试很多更深层次的。
这里有一个堆栈溢出交换。不会讲更多的细节。但我认为你已经看过很多关于调试这种方式。
现在的数据帧。所以我建议你在大熊猫之间交换数据帧和表,所以在这里你可以看到一个表与温度,时间,等等。您可以使用称为镶花的文件格式。拼花是一种非常有效的存储和传输格式表格数据,所以从本质上讲,表,数据帧之间的这种类型的东西——所有不同的政党(听不清)的生态系统。所以你可以交换数据。这是非常,非常方便。
我们为这个项目作出贡献。所以你知道,MathWorks致力于一些开源项目的生态系统非常重要。所以我们有读和写一个拼花文件的一种方法。这是一个非常简单的例子。让我告诉你。
这里,我将创建一个数据帧。所以我要做的就是我要做的,从我的命令行,也许,这里。我有一个命令行吗?也许我要做的就是我要做从Visual Studio代码。这是更方便。那么我在哪里?MATLAB与Python,天气预报。这是一个项目。
这是一个文件,我想展示给你。这是一个非常简单的导入NumPy熊猫,定义一个数据帧。我们可以把数据帧。我要执行。你会看到它的创建,我怎么能给你?我要删除这个数据的拼花,这样你可以看到,它也重新创建它。我要删除这个。
让我去full模式和执行。这是促使我数据帧。创建(听不清)拼花文件。所以也许我需要移动它回到这里。现在我要做的就是我要打开读取数据帧mlx MATLAB。我第一次一个函数,我能读懂,让我增加这个读取铺文件。
这是给我的文件名称、变量名称,等等。我可以在这里阅读。好吧,让我来,所以我阅读该文件。是这样的,列1,第二列,第三列。所以你可以看到,有一个很完美的关系我们生成和阅读。
所以到最后,我们也可以检查数据类型。在这里,第2列数据的类是什么?这是一个字符串。在这里我们只有字符串。字符串,字符串,字符串。我要做的就是我要定义一个新类型。这将是一个单元而不是一个字符串。
我们可以把结果返回给拼花。在这里,我们创建了一个新的,在哪里?我没有它。我执行了吗?这是奇怪的。我找到正确的位置吗?这是一个演示效果。这是真的
奇怪。嗯,我建议继续前进。因为你有想法在刚才发生了什么事,蒋禄卡和弗兰西斯卡吗?
没有在这一刻。
这是奇怪的。这是昨天的工作。
是的。我认为我们可以建议我们继续因为时光飞逝。
完全正确。我们将完成这部分在从TensorFlow进口模型。我有一个很短的视频,(听不清)很快。所以你可以去你的(听不清),只是寻找TensorFlow进口国,在Keras TensorFlow进口国。所以你可以下载它。这里已经卸载。为了访问它,你只需要输入resnet例子。进口Keras网络,这个函数的,基于模型的路径,它只是从这个网络进口每一层。
然后你可以想象它。所以你有一个网络分析仪,您可以使用神经网络工具箱。现在它被称为深度学习工具。它使您能够分析深层神经网络。
然后你可以试着给一个新的例子。在这里,它只是将这个函数进行分类。这是一个非常简单的分类器。这就是它。你可以去这个视频的解说。
现在,我们有更多的时间,人,—
我没有看到任何额外的问题在聊天。让我们看看(听不清)人额外的问题。因为我们有35分钟了,我们仍有一些事情想显示。但我将优先从Python调用模型,因为我们有一个问题关于之前的聊天。金宝app所以我们可以讨论。然后,如果我们有时间,那么我们也可以讨论其他话题从Python运行MATLAB并行代码。
我有一个例子。让我关闭,打开这个,PID控制器。所以我有一个文件夹和文件。我有一个Python文件调用MATLAB引擎,启动MATLAB引擎在桌面模式。然后一个(听不清)项目,一切都在这里。PID控制器的一个例子,非常基本的。
我把它变成了一个笔记本,你可以看到它是如何一步一步工作。我现在不会去执行它,因为我的MATLAB引擎完全搞砸了。我修改的东西就在研讨会并现在有点混乱。让我告诉你它是如何工作,所以只是体现一些库。
启动引擎与桌面模式会直接提示您MATLAB桌面。这是开始仿真软件项目。金宝app我们开设这个模拟PID。这里的模型。你可以打印模型的名称等等。在这里,我刚刚用图像表示的(听不清)显示。我表示的图像功能,相当于我从系统打印。这只是一个模型的表示。
我们可以把变量到工作区中。这里分配不同的论点,Kp,我,和d,所以不同的PID参数。我们用一个简单的MATLAB仿真引擎运行点sim函数模型的名称。我们给它一个输出参数。所以我们会输出一个参数。这就是为什么我们给它这个参数作为一个条目。
这之后,这就是演示结束。让我们继续前进,试着看看我们今天可以覆盖更多的地面。我们想通过这个主题的并行代码吗?我们有一个很酷的演示。弗朗西斯卡,你想,你认为它是合适的快速显示?
是的,我是这样认为的。我认为也很重要的问题相关的代码生成。
让我介绍你和我们分享了这个演示,弗朗西斯卡。这是一个非常基本的例子运行的生日。这是一个生日在一组匹配,看看两个人生日相同。所以我们可以并行化这个例子。现在给你视频。这是一段非常短的代码(听不清)的函数,它只是想看看,如果我们有比赛。
我们可以从Python调用这个。基本上,在这个演示很酷的是,我们要设置或从Python调用并行MATLAB代码,而不是大量的覆盖。在这里,我们只是启动Python提示符。我们会在这里显示正在运行的不同过程。让我们寻找MATLAB的过程。一旦我们将导入MATLAB(听不清)引擎,在这里你可以看到是一个MATLAB的过程,出现了。
运行脚本。让我们看看过程演变的方式。这是开始平行(听不清)。所以你会发现有三个新的MATLAB就出现。因此,工作是并行。这是很酷。所有的只是做几行代码从Python调用MATLAB引擎。这就是它。
这个我们之前显示,不久。现在让我们去部分的代码生成。什么类型的问题你们通常在这种背景下吗?
所以典型的问题是,从本质上说,如果我们能从MATLAB生成C或c++代码的代码调用Python函数,本质上回忆从MATLAB Python,然后生成C代码。这是个问题。
所以看起来蛮复杂的。我想说,最好的方法是离开MATLAB是一种方法。你为嵌入式硬件生成代码。这是不太可行的如果你有一个Python函数嵌入,因为从本质上讲,代码生成的工作方式是,我们通过等价映射我们所有的语言和c++或其他低水平表示。与Python语言我们不这么做。所以我们不能生成等价的代码。
我们能做的是如果你想要为企业系统生成,然后我们可以嵌入企业这样的应用程序系统MATLAB和Python。这是一种方式,它是有可能的,而不是c++为企业部署。所以如果你有企业部署,你可以用MATLAB和Python。但如果你想生成代码为嵌入式控制器,然后你不能(听不清)。
也许是一个segue进最后一个话题是如何部署MATLAB-Python容器应用程序在一个码头工人。所以我们从20 b(听不清)的新功能,自第二次发布2020年MATLAB编译器。这使你以同样的方式我们可以生成一个可执行文件,你现在能够生成一个集装箱码头工人的形象。
这是一个部署在本地或你可以上传到你的公司注册。如果你有一个码头工人注册表,你可以处理它就按这个(听不清)你的公司注册。这样,你就可以将它部署在云上各种各样的事情。这是一个非常方便的方法与现代技术,分享你的独立应用程序虚拟化技术,如码头工人。
所以它只是码头工人运行您的独立应用程序的名称。要运行和产生潜在写输出。在这里,我给你一个很短的视频覆盖。这里我们采用了一种非常mymagic基本功能。它只是一个幻方。
所以它会做什么,在这里我们要调用编译器运行时函数与下载。它会下载运行时。因为从本质上讲,为了建造这个集装箱,你需要有一个运行时,一个MATLAB运行时。这将是执行什么,本质上,这些功能。
所以你先下载这个运行时。那么你要做的是建立一个独立的应用程序。你需要给它一个论点,对输入数字。因为这里有一个输入x和你想确保这个输入作为一个数字输入。这是很重要的,因为它是码头工人不知道如何治疗如果你没有专门告诉他。
然后你将MATLAB,所以compiler.package。下面的有点。所以我们不认为它很好。这个函数,再次抱歉,它本质上是构建码头工人文件和编译它。这就是建筑,就像你通常会做医生。但这样做完全透明。建立你的容器。之后,你可以运行这个命令码头工人在这里与您的应用程序的名称。
所以我们只与一个数字联合运行该命令,5。这是幻方的大小,我们想要作为输出。这是结果。这里有一种方法使这些计算无缝地与集装箱码头工人。(听不清),我认为我们今天已经涵盖了很多内容。
这是非常有用的信息。Yann,非常感谢。因为我们没时间了,我将结束在这里。的问题,已经张贴在聊天,之后我们会跟进你的网络研讨会。和最后但并非最不重要,我想提醒你——好吧,事实上,我想告诉你,弗兰西斯卡的网络研讨会,我跑几周前在线。所以你可以访问它,看一遍。
然后如果你有其他问题,您可以联系技术支持或让弗朗西斯卡,我知道。金宝app我们会跟进。再次谢谢你们,每个人,今天和互动,(听不清)这次会议直接与你的问题。我希望每个人都非常愉快的一天。谢谢你!
相关产品下载188bet金宝搏
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。