改变文本数字在一个单元中

15的观点(30天)
迈克Mierlo范
迈克Mierlo范 2020年5月7日
评论道: 迈克Mierlo范2020年5月11日
你好,
假设有4 x 2细胞矩阵:
1 '文本一个“文本”两个
2 ' 5 ' '文本两个
3 '文本一个“文本”两个
4“10”的文本两个
我想要的结果4 x 2细胞矩阵a的双打,自觉的最后一列。“文本”,取而代之的是1(双):
1“文本两个”
2 5“文本两个”
3 1的文本两个
4 10“文本两个”
当我使用一个for循环和if语句我得到的误差矩阵维度必须一致。下面是我的错误的代码:
i = 1:尺寸(1)
如果{我2}= =“文本”
{我2}= = 1
其他的
我{2}= = str2double({2}我)
结束
结束

接受的答案

彰Agata
彰Agata 2020年5月8日
以下呢?
B =取代(,“文本”,' 1 ');
B = cellfun (@str2double, B (: 1: end-1),“UniformOutput”、假);
= [B, A (:,)];
3评论
迈克Mierlo范
迈克Mierlo范 2020年5月8日
现在它的工作原理。因为我尝试一些事情,我的一个(:,2)转换为双打与南而不是文本。重置到原始细胞的解决方案。谢谢你!

登录置评。

答案(1)

madhan拉维
madhan拉维 2020年5月7日
编辑:madhan拉维 2020年5月7日
V = str2double (string ());% < 2016
V (isnan (V)) = 1
4评论
迈克Mierlo范
迈克Mierlo范 2020年5月11日
Madhan拉维。是的,我编出答案后。你的答案完全在我的工作简化的问题,但我简化它到目前为止,您的解决方案没有按照实际工作表,包括更多的文本列。
沃尔特·罗伯森。是的有更多的数值。我将它们转换为字符串解决了问题所需的操作。

登录置评。

类别

找到更多的在字符和字符串帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!