If I have a 20-digit numeric string, how can I convert it to an array where the elements are the digits of the string?
2 次查看(过去 30 天)
显示 更早的评论
For example, if I have a string, such as
n='9555688756196283262165034064'
how can I convert it to the vector
b=[9 5 5 5 6 8 8 7 5 6 1 9 6 2 8 3 2 6 2 1 6 5 0 3 4 0 6 4]?
I tried using the following code, but Matlab is not accurate, and the imprecisions throw off the rest of my script:
n='9555688756196283262165034064';
a=str2double(n);
b=num2str(a) - '0';
0 个评论
回答(2 个)
Star Strider
2016-11-28
This is not generally recommended, but it works here:
n = '9555688756196283262165034064';
b = n - '0'
b =
Columns 1 through 16
9 5 5 5 6 8 8 7 5 6 1 9 6 2 8 3
Columns 17 through 28
2 6 2 1 6 5 0 3 4 0 6 4
0 个评论
Elias Gule
2016-11-29
Ok, try this code:
n = '9555688756196283262165034064';
matrix = arrayfun(@str2double ,n);
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!