我需要在一列数字和字符串矩阵另一列在MATLAB添加字符串一列和数字,另一列
a = [ 1 'cancer'
2 'cancer'
3 'cancer'
4 'noncancer'
5 'noncancer' ]
我无法字符串添加到一个数组。
我需要在一列数字和字符串矩阵另一列在MATLAB添加字符串一列和数字,另一列
a = [ 1 'cancer'
2 'cancer'
3 'cancer'
4 'noncancer'
5 'noncancer' ]
我无法字符串添加到一个数组。
您可以使用单元阵列。要做到这一点,仅仅靠大括号替换方括号:
a = { 1 'cancer'
2 'cancer'
3 'cancer'
4 'noncancer'
5 'noncancer' }
这导致
a =
[1] 'cancer'
[2] 'cancer'
[3] 'cancer'
[4] 'noncancer'
[5] 'noncancer'
你需要使用什么是不是数组,但cell数据结构
我用循环得到了答案
clc;clear all;close all;
count = 0
for i = 1 : 5
count = count + 1;
a{i,1} = count;
end
for i=1:3
a{i,2} = ['cancer'];
end
for i=4:5
a{i,2} = ['noncancer'];
end
考虑在初始化之前为你的单元阵列预先分配内存(在你的情况下,这将按照以下方式完成:'a = cell(5,2);')。这样可以避免动态分配,这可能会减慢大数组的执行速度。 – 2013-03-05 11:27:35
@EitanT谢谢。我将它用于我的大数组,其中有150个数据。 – Mrk 2013-03-06 16:49:47
工作。如何做150个数据。是否有可能通过for循环来完成。我必须手动输入150个以上的数据。 – Mrk 2013-03-05 09:29:50
这取决于你的数据是怎样的。我会假设你有一个带有数字的矢量和一个带有字符串的矢量? – 2013-03-05 09:31:02
谢谢您的信息。现在我用一个带有单元结构的for循环来获得它。 – Mrk 2013-03-05 09:48:28