Often you may want to calculate the number of sets with k elements that can be chosen from a set of k total elements.
Written in mathematical terms, we can express this as:
- choose(n, k) = n! / (k!(n-k)!)
Note that the ! symbol is used to represent a factorial in mathematics.
One of the easiest ways to do this in R is by using the choose() function, which can be used to perform this exact task.
The choose() function uses the following syntax:
choose(n, k)
where:
- n: Number of total elements in one set
- k: Number of elements in a given set you would like to choose
The following example shows how to use the choose() function in practice.
Note: The choose() function is available in base R so you do not need to install any external packages to utilize this function.
Example: How to Use the choose() Function in R
Suppose that we would like to know the number of different ways that 2 elements can be chosen from a set with 5 elements.
We can use the choose() function with the following syntax to answer this question:
#find number of ways that 2 elements can be chosen from set of 5 elements
choose(5, 2)
[1] 10
The choose() function returns a value of 10, which tells us that there are 10 ways that 2 elements can be chosen from a set with 5 elements.
We can verify that this is correct by manually calculating the answer using the formula that we shared earlier:
- choose(n, k) = n! / (k!(n-k)!)
- choose(5, 2) = 5! / (2!(5-2)!)
- choose(5, 2) = 120 / (2(6))
- choose(5, 2) = 120 / 12
- choose(5, 2) = 10
This matches the value returned by the choose() function in R.
Feel free to use different values for n and k as well.
For example, suppose that we would like to know the number of different ways that 4 elements can be chosen from a set with 7 elements.
We can use the choose() function with the following syntax to answer this question:
#find number of ways that 4 elements can be chosen from set of 7 elements
choose(7, 4)
[1] 35
The choose() function returns a value of 35, which tells us that there are 35ways that 4 elements can be chosen from a set with 7 elements.
We can verify that this is correct by manually calculating the answer using the formula that we shared earlier:
- choose(n, k) = n! / (k!(n-k)!)
- choose(7, 4) = 7! / (4!(7-4)!)
- choose(7, 4) = 5040 / (24(6))
- choose(7, 4) = 5040 / 144
- choose(7, 4) = 35
This matches the value returned by the choose() function in R.
It’s important to note that the value of n must always be greater than the value for k. This should make sense mathematically because it’s not possible for us to choose, say, 7 elements, from a list of only 4 elements.
If we attempt to use a value for n that is less than k in the choose() function in R then the result will simply be zero.
For example, suppose that we attempt to use the following syntax:
#find number of ways that74 elements can be chosen from set of 4 elements
choose(4, 7)
[1] 0
The choose() function returns zero since there are zero ways to choose 7 elements from a list of only 4 elements.
Additional Resources
The following tutorials explain how to perform other common tasks in R:
How to Create a Frequency Table by Group in R
How to Create Relative Frequency Tables in R
How to Use the describe() Function in R
How to Use the describeBy() Function in R