Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Compete to become Power BI Data Viz World Champion! First round ends August 18th. Get started.

Reply
Griffin_BI
Frequent Visitor

WINDOW and RAND

If I have a table, "Table" with an ID column and three columns, "A", "B" and "C".

 

Will the following produce a table with a new column of random numbers that are evenly distributed within each partition of A, B and C?

ADDCOLUMNS(
    WINDOW(1, ABS, -1, ABS, Table, , , PARTITIONBY(zPreviousMYCases[@A], zPreviousMYCases[@B], zPreviousMYCases[@C])),
    "@Rand",
    RAND()
)
1 ACCEPTED SOLUTION

yes, as long as your assumption holds true.   The usual disclaimer applies - RAND is not truly random.

View solution in original post

3 REPLIES 3
Griffin_BI
Frequent Visitor

I'm looking to produce random sample for each partition of A, B and C. I use RAND() to return a random number and then select everything with the random number below a certain value to get a propotion of each partition. This is reliant on the random numbers for each parition being evenly distributed, for example no skew to the upper end or lower ends of RAND(), which produces a number between 0 and 1. Assuming each partition contains many data points, can I use WINDOW and RAND() in the described way to get a evenly distributed set of random numbers for each partition?

Thank you for responding.

yes, as long as your assumption holds true.   The usual disclaimer applies - RAND is not truly random.

lbendlin
Super User
Super User

Please explain this part

 

random numbers that are evenly distributed within each partition of A, B and C

 

You can only get an "evenly" distributed result with large amounts of data.

Helpful resources

Announcements
August Power BI Update Carousel

Power BI Monthly Update - August 2025

Check out the August 2025 Power BI update to learn about new features.

August 2025 community update carousel

Fabric Community Update - August 2025

Find out what's new and trending in the Fabric community.