Alteryx Designer Discussions

Find answers, ask questions, and share expertise about Alteryx Designer.

General Discussions has some can't miss conversations going on right now! From conversations about automation to sharing your favorite Alteryx memes, there's something for everyone. Make it part of your community routine!

SOLVED

Generate Random Numbers

ts22
6 - Meteoroid

How would I assign a random number using rand or another function if I want the range to be between 0 to 16? 

AndrewBanh
9 - Comet

Hi @ts22 

 

Try the formula:

 

rand() * 16

 

The expression rand() generates a number between 0 - 1 so just multiply by 16, and set the data type as Int32 or something, so that there are no decimals.

 

If you want Double to be your Data type, then use something like ceil(rand() * 16) instead.

 

Hope that helps.

 

- Andrew

ts22
6 - Meteoroid

Thank you, I appreciate it! 

MarqueeCrew
19 - Altair
19 - Altair
A slightly different solution:

RandInt(n): Returns a random integer between 0 and the specified parameter

RandInt(10) returns 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 or 10

RandInt(5000) returns a random whole number between 0 and 5000, such as 741

Cheers,

Mark
Alteryx ACE & Top Community Contributor

Chaos reigns within. Repent, reflect and reboot. Order shall return.
ts22
6 - Meteoroid

Is there a way to use RandInt and not have it assign duplicate values? I noticed it will give me two 8's instead of just a singular 0-16 for each number. 

AndrewBanh
9 - Comet

Hi @ts22 

 

I don't have a fancy solution for you but I can suggest a method I have outlined in my head.

 

1. Use a Record ID tool to "Sort" your records as they are now.

2. Use a Formula tool and use the formula rand(). There are quite a few significant figures so hopefully there are no duplicate values (odds are low). You can use a unique tool as a checker for this.

3. Use a Sort tool and rank the field which has the random numbers. 

4. Use a Multi-Row formula to rank the records in this new order.

5. Use another Sort tool to sort by Record ID to return your records to the order they were in previously.

 

I have attached my workflow below for you.

 

- Andrew

danilang
17 - Castor
17 - Castor

Hi @ts22 

 

What do you want use the random numbers for?  Why is it important not to have duplicates?

 

Is it to apply a random sort order to your data?  if so then create a new field with Rand() as the formula and sort by this new field.  

 

Is it to select a random subset of the data? In that case use the Sample tool.

 

Dan

bb213
8 - Asteroid

@danilang 

 

One use case would be if you were creating a Personal ID number for employees. 

bb213
8 - Asteroid

probably not since that goes against the definition of "random". 

Labels