如何将字符串作为数据添加到数据集?

时间:2013-07-12 17:08:47

标签: matlab

我使用以下代码创建一个简单的数据集并添加前两行:

data = dataset([1; 2],[3; 4],'VarNames', {'A', 'B'})

之后,我想将值4设置为' test':

 data(1,2) = 'test'

因为这会抛出以下异常:

Error using dataset/subsasgnParens (line 198)
Right hand side must be a dataset array.
Error in dataset/subsasgn (line 79)
    a = subsasgnParens(a,s,b,creating); 

我也尝试过:

data(1,2) = dataset('test');

但这也行不通。因此我的问题是:如何使用我使用的方法(我必须指定行和列)将String添加到我创建的数据集中?

1 个答案:

答案 0 :(得分:2)

你做不到

data(1,2) = dataset('test');

因为'test'是char类型而其余数据是双精度数,因为字符串'test'是您尝试将四个元素放入数组的一个元素中。

您需要使用cell arrays。如果您想使用dataset功能,请参阅cell2datasetdataset2cell功能。例如:

data = dataset([1; 2],[3; 4],'VarNames',{'A', 'B'})
data2 = dataset2cell(data);
data2{3,1} = 'test';
data3 = cell2dataset(data2,'ReadVarNames',true');