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

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!