cell array with numeric values only

3 ビュー (過去 30 日間)
Pavan Singh
Pavan Singh 2020 年 11 月 2 日
コメント済み: Pavan Singh 2020 年 11 月 2 日
Conver this array to an array with numbers only so it can be used for a graph

採用された回答

VBBV
VBBV 2020 年 11 月 2 日
編集済み: VBBV 2020 年 11 月 2 日
%if true
% code
% end
C = {'long: 151.125#';'long: 151.126#'}
for i=1:length(C)
nn{i}=(C{i}(7:13));
end
A = cell2mat(nn')
B = str2num(A)% array with numbers only
  1 件のコメント
Pavan Singh
Pavan Singh 2020 年 11 月 2 日
Thank you, very helpful.

サインインしてコメントする。

その他の回答 (2 件)

Stephen23
Stephen23 2020 年 11 月 2 日
Do NOT use loops or cellfun for this, unless you really want to write complex and slow MATLAB code.
The most efficient solution is to use sscanf like this:
C = {'long: 151.125#';'long: 151.126#'};
V = sscanf([C{:}],'long:%f#')
V = 2×1
151.1250 151.1260

Akira Agata
Akira Agata 2020 年 11 月 2 日
Another possible solution:
C = {'long: 151.125#';'long: 151.126#'};
V = regexp(C,'[?\d.]+','match','once');
V = str2double(V);
>> V
V =
151.1250
151.1260

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

製品


リリース

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by