Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: Integer Length Count
Replies: 4   Last Post: Nov 24, 2012 2:43 AM

 Messages: [ Previous | Next ]
 Bob Hanlon Posts: 906 Registered: 10/29/11
Re: Integer Length Count
Posted: Nov 24, 2012 2:43 AM

Conversion of integers to strings is not necessary and slows down the process.

n = 1000000;

data = RandomInteger[10000000, n];

t1 = Timing[lengthFrequency = Tally[Length /@ IntegerDigits[data]]][[1]]

2.12561

t2 = Timing[lengthFrequency2 = Tally[StringLength[ToString /@ data]]][[1]]

3.63404

Both processes provide the same results.

lengthFrequency == lengthFrequency2

True

Conversion to strings is much slower.

t2/t1

1.70965

Bob Hanlon

On Fri, Nov 23, 2012 at 3:28 AM, <sylviehobbs@comcast.net> wrote:
>
> I use a function in SAS that takes, in my case, a billion different integers of varying length and counts the frequency of the length of each integer by converting the digits in the integers into alpha characters and counting the frequency of the right most position of the alpha character.
>
>
>
> I am trying to do more and more routine programming in Mathematica and after poking around in documentation for the past 4 hours have yet to find the parallel function in Mathematica for counting the integer frequency length in a big data set. My family wants me to drop everything and put the Turkey in the oven. My cat Sylvester even fell asleep on his back in front of the refrigerator with his little legs up in the air, so he want miss the transfer of the Turkey from the stove to the refrigerator. OH WELL -- IT'S SHOW TIME!
>
>
>
> Meanwhile, let me know any recommendations you have on a Mathematica function that parallels the SAS Function.
>
>
>
> Sylvia Hobbs
>

Date Subject Author
11/24/12 Ulrich Arndt
11/24/12 James Stein
11/24/12 Bob Hanlon
11/24/12 Bill Rowe