Uimport不会将变量保存到基础工作区

时间:2010-05-04 18:46:07

标签: user-interface matlab import variables

我尝试使用uimport将文件加载到基础工作区.....它第一次工作....但经过一段时间后再次尝试...我没有看到基础工作空间中的变量。 我使用了'uimport'给出的默认变量名。

这是我使用的命令:

uiimport(filename)

默认情况下创建的两个变量...“data”和“textdata”(这是标题)....但是现在当我运行它时不再保存在基础工作区中

我不想像u2mport那样为变量分配变量......

K = uiimport(filename)
assignin(base,'green',K)

我不想那样做因为  我的数据集有一个文本标题和数据本身,这样做会将“textdata”和“data”分配给“green”变量

我怎样才能获得绿色“数据”的尺寸以及如何仅传递“数据”(位于工作空间中的绿色变量中......“rmbr”...绿色变量将“data”和“textdata”都保存到另一个函数中。

当uimport自动将变量保存在基础工作区中时,我能够完成所有这些....但不知怎的,现在却没有。

我很感激有关此事的任何帮助或提示

2 个答案:

答案 0 :(得分:0)

使用

K = uiimport(filename);
green=[K.data];

仅获取green变量中的数值数据。

uiimport将文件数据作为包含字段datatextdatacolheaders的结构返回。要仅返回数据字段,请将另一个变量指定为K.data,或者如果您不希望文件中包含其他信息,则只需重新指定K=K.data

答案 1 :(得分:0)

关于UIIMPORT需要注意的一点是,它会将变量保存到调用它的工作空间。如果从命令窗口调用它,变量将保存到基础工作区。但是,如果从函数内调用它,变量将保存在函数的工作空间中。这可以解释为什么您没有看到变量出现在基础工作区中。

一种解决方案是使用函数ASSIGNIN

执行以下操作
K = uiimport(filename);           %# Load your data into a structure K
assignin('base','green',K.data);  %# Get the "data" field from K and assign
                                  %#   it to variable "green" in the base
                                  %#   workspace