How to delete an element from a cell
2 ビュー (過去 30 日間)
古いコメントを表示
I have a column in matlab with data written this way:
19970422
30980524
63098754
etc …
And I only want to have the first 4 numbers (preferably as a new variable), for instance like this:
1997
3098
6309
How can I do it? Thanks a lot for your help.
採用された回答
Apdullah YAYIK
2014 年 4 月 27 日
編集済み: Jan
2014 年 4 月 27 日
Thats easy
X=[19970422 30980524 63098754]
New_X=floor(X/1000)
2 件のコメント
Azzi Abdelmalek
2014 年 4 月 27 日
This gives the 5 first digits, use : floor(X/10000) . Also this works only for numbers with 8 digits.
Image Analyst
2014 年 4 月 27 日
And she said she had cells, not regular numerical arrays, though perhaps she didn't really mean cells - who knows.
その他の回答 (1 件)
Azzi Abdelmalek
2014 年 4 月 26 日
編集済み: Azzi Abdelmalek
2014 年 4 月 26 日
a=[19970422;30980524;63098754]
b=arrayfun(@num2str,a,'un',0)
out=cellfun(@(x) str2num(x(1:4)),b)
%or
a=[19970422;3098052422;630987541;0.23]
n=max(0,fix(log10(a)+1)-4)
out=fix(a./10.^n)
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!