【发布时间】:2011-12-22 19:03:43
【问题描述】:
我在 MATLAB 中使用 xlsread 从 excel 文件中读取工作表。我的目标是将 excel 工作表的每一列读取为数字数组。其中一列混合了数字和数字+字符。例如,这些值可能是 200、300A、450、500A、200A、100。这是我目前所拥有的:
[num, txt, raw] = xlsread(fileIn, sheets{ii}); % Reading in each sheet from a for loop
myCol = raw(:, 4) % I want all rows of column 4
for kk=1:numel(myCol)
if iscellstr(myCol(kk))
myCol(kk) = (cellfun(@(x)strrep(x, 'A', ''), myCol(kk), 'UniformOutput', false));
end
end
myCol = cell2mat(myCol);
这可以从数字中去除字符,但我只剩下:
myCol =
[200]
'300'
[450]
'500'
'200'
[100]
cell2mat 上的哪些错误:
cell2mat(myCol)
???在 46 处使用 ==> cell2mat 时出错
输入元胞数组的所有内容必须是相同的数据类型。
我觉得我可能在某个地方混淆了() 和{}。有人可以帮我解决这个问题吗?
【问题讨论】:
-
变量
alt是什么?应该是myCol? -
哎呀抱歉。是的,应该是。我编辑了它。
标签: matlab