Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
User interface 将数据从工作区传递到函数_User Interface_Matlab_Workspace - Fatal编程技术网

User interface 将数据从工作区传递到函数

User interface 将数据从工作区传递到函数,user-interface,matlab,workspace,User Interface,Matlab,Workspace,我创建了一个GUI并使用uiimport将数据集导入matlab工作区,我想将导入的数据传递给matlab中的另一个函数…如何将导入的数据集传递给另一个函数…我尝试了diz…但它无法选择diz…它无法选择matlab工作区中的数据…有什么想法吗 [file_input, pathname] = uigetfile( ... {'*.txt', 'Text (*.txt)'; ... '*.xls', 'Excel (*.xls)'; ... '*.*', 'All Files (*.*)'},

我创建了一个GUI并使用uiimport将数据集导入matlab工作区,我想将导入的数据传递给matlab中的另一个函数…如何将导入的数据集传递给另一个函数…我尝试了diz…但它无法选择diz…它无法选择matlab工作区中的数据…有什么想法吗

[file_input, pathname] = uigetfile( ...
{'*.txt', 'Text (*.txt)'; ...
'*.xls', 'Excel (*.xls)'; ...
'*.*', 'All Files (*.*)'}, ...
'Select files');

uiimport(file_input);
M = dlmread(file_input);
X = freed(M);

我认为您需要指定此语句的结果:

uiimport(file_input);
对于一个变量,如下所示

dataset = uiimport(file_input);
然后将其传递给下一个函数:

M = dlmread(dataset);
这是Matlab的一个非常基本的功能,这对我来说,您会发现阅读一些联机帮助和Matlab的一些文档很有价值。当你做到这一点时,你可能会找到更整洁、更快的方法


编辑:好吧,@Tim,如果其他一切都失败了。所以我做了,我以前的回答是不正确的。您需要传递给
dlmread
的是要读取的文件名。因此,您可以使用
uiimport
dlmread
读取文件,但不能同时使用这两种方法。您使用哪一种取决于您尝试执行的操作和输入文件的格式。所以,去RTFM,我也会这么做。如果您仍有问题,请更新您的问题并提供文件内容的详细信息。

在脚本中,您有三种读取文件的方法。根据您的文件格式选择其中一个。但首先,我将结合文件名和路径:

file_input = fullfile(pathname,file_input);
我不会在脚本中使用UIIMPORT,因为用户可以更改读取数据的方式,变量名取决于文件名和用户

使用,您只能从文件中读取数字数据。您还可以使用跳过一些行或列

M = dlmread(file_input,'\t',1,1);
跳过左侧的第一行和一列。 也可以用Excel样式定义一个范围。有关更多详细信息,请参阅DLMREAD文档

传递给DLMREAD的文件名必须是字符串。不要传递文件句柄或任何数据。如果不是字符串,您将得到“文件名必须是字符串”。简单

从二进制文件读取数据。如果您真的必须这样做,请参阅文档


还有许多其他函数可以从文件中读取数据。如果您仍然有问题,请向我们展示您的文件格式示例,以便我们建议阅读该文件的最佳方式。

Matlab文档编写得非常好,应该能够帮助您澄清问题。如果你不想阅读,你也可以看很多视频教程中的一个,比如这一个:???在55文件名处使用==>dlmread时出错必须是字符串。Datz我得到了什么我试着用dlmread