How to separate the integer value of a real number

For example a variable A is calculated as {2.951,5.420,8.062,4.963, .....} I want A to have just the integer values of these real numbers, i.e. A={2,5,8,4,....}

 Accepted Answer

Sachin Ganjare
Sachin Ganjare on 26 Sep 2012
Edited: Sachin Ganjare on 26 Sep 2012
Just use Floor function.
A_INT = floor(A);

More Answers (1)

A = cellfun(@(x)(fix(x)),A,'UniformOutput', false)

3 Comments

Anonymous functions in CELLFUN are much slower than functions handles. Does this work:
cellfun(@fix, x,'UniformOutput', false)
TAB
TAB on 26 Sep 2012
Edited: TAB on 26 Sep 2012
@Jan, Yes, it will also work.
A= {1:0.55:1000};
TEST 1
tic
cellfun(@fix,A,'UniformOutput', false);
toc
>> Elapsed time is 0.000161 seconds.
TEST 2
tic
cellfun(@(x)(fix(x)),A,'UniformOutput', false);
toc
>> Elapsed time is 0.000442 seconds.

Sign in to comment.

Categories

Community Treasure Hunt

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

Start Hunting!