Bird
Raised Fist0
SciPydata~20 mins

Uniform distribution in SciPy - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Uniform Distribution Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of uniform random sample generation
What is the output of this code snippet that generates 3 random numbers from a uniform distribution between 0 and 1?
SciPy
from scipy.stats import uniform
sample = uniform.rvs(size=3, random_state=42)
print([round(x, 2) for x in sample])
A[0.37, 0.95, 0.73, 0.60]
B[0.37, 0.95, 0.73]
C[0.42, 0.58, 0.91]
D[0.73, 0.37, 0.95]
Attempts:
2 left
💡 Hint
Use the random_state to get reproducible results and round the output to 2 decimals.
❓ data_output
intermediate
2:00remaining
Mean and variance of uniform distribution
What are the mean and variance of a uniform distribution between 2 and 5?
SciPy
from scipy.stats import uniform
rv = uniform(loc=2, scale=3)
mean = rv.mean()
var = rv.var()
print(round(mean, 2), round(var, 2))
A3.0 1.0
B3.5 1.0
C2.5 0.75
D3.5 0.75
Attempts:
2 left
💡 Hint
Mean is midpoint; variance is (scale^2)/12.
❓ visualization
advanced
3:00remaining
Plotting PDF of uniform distribution
Which option produces the correct plot of the probability density function (PDF) of a uniform distribution from 0 to 4?
SciPy
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import uniform
x = np.linspace(-1, 5, 500)
rv = uniform(loc=0, scale=4)
plt.plot(x, rv.pdf(x))
plt.title('Uniform PDF from 0 to 4')
plt.show()
AA flat line at height 0.25 between 0 and 4, zero elsewhere
BA bell-shaped curve centered at 2
CA line increasing from 0 to 4
DA line decreasing from 0 to 4
Attempts:
2 left
💡 Hint
Uniform PDF is constant between loc and loc+scale.
🧠 Conceptual
advanced
1:30remaining
Effect of scale parameter on uniform distribution
If you increase the scale parameter of a uniform distribution while keeping the location fixed, what happens to the variance?
AVariance stays the same
BVariance decreases linearly with scale
CVariance increases quadratically with scale
DVariance increases linearly with scale
Attempts:
2 left
💡 Hint
Variance formula involves square of scale.
🔧 Debug
expert
2:00remaining
Identify the error in uniform distribution sampling code
What error does this code raise? from scipy.stats import uniform sample = uniform.rvs(loc=1, scale=-2, size=5) print(sample)
SciPy
from scipy.stats import uniform
sample = uniform.rvs(loc=1, scale=-2, size=5)
print(sample)
AValueError: scale parameter must be positive
BTypeError: size must be an integer
CNo error, prints 5 samples
DRuntimeWarning: invalid value encountered
Attempts:
2 left
💡 Hint
Scale parameter cannot be negative for uniform distribution.

Practice

(1/5)
1. What does the loc parameter represent in the scipy.stats.uniform distribution?
easy
A. The starting point (minimum value) of the uniform distribution range
B. The width (length) of the uniform distribution range
C. The mean of the uniform distribution
D. The variance of the uniform distribution

Solution

  1. Step 1: Understand the parameters of uniform distribution

    The uniform distribution in scipy uses loc as the starting point of the range and scale as the length of the range.
  2. Step 2: Identify the role of loc

    The loc parameter sets the minimum value where the uniform distribution starts.
  3. Final Answer:

    The starting point (minimum value) of the uniform distribution range -> Option A
  4. Quick Check:

    loc = start value [OK]
Hint: Remember: loc = start, scale = length [OK]
Common Mistakes:
  • Confusing loc with scale
  • Thinking loc is the mean
  • Mixing loc with variance
2. Which of the following is the correct way to create a uniform distribution from 5 to 15 using scipy?
easy
A. uniform(loc=10, scale=5)
B. uniform(loc=5, scale=15)
C. uniform(loc=5, scale=10)
D. uniform(loc=0, scale=10)

Solution

  1. Step 1: Calculate scale from range

    The range is from 5 to 15, so the length is 15 - 5 = 10. This is the scale.
  2. Step 2: Set loc and scale correctly

    Set loc=5 (start) and scale=10 (length) to cover 5 to 15.
  3. Final Answer:

    uniform(loc=5, scale=10) -> Option C
  4. Quick Check:

    loc=5, scale=15-5=10 [OK]
Hint: Scale = end - start, loc = start [OK]
Common Mistakes:
  • Swapping loc and scale values
  • Using scale as the end value
  • Setting loc to zero incorrectly
3. What is the output of this code?
from scipy.stats import uniform
rv = uniform(loc=2, scale=3)
print(round(rv.pdf(3), 2))
medium
A. 0.33
B. 0.20
C. 0.50
D. 0.00

Solution

  1. Step 1: Understand PDF of uniform distribution

    PDF is constant inside the range and equals 1/scale. Here, scale=3, so PDF = 1/3 ≈ 0.3333.
  2. Step 2: Check if x=3 is inside the range

    Range is from loc=2 to 2+3=5. Since 3 is inside, PDF at 3 is 1/3 ≈ 0.33.
  3. Final Answer:

    0.33 -> Option A
  4. Quick Check:

    PDF = 1/scale = 1/3 = 0.33 [OK]
Hint: PDF inside range = 1/scale [OK]
Common Mistakes:
  • Calculating PDF as zero inside range
  • Using loc instead of scale for PDF
  • Rounding errors without checking range
4. Identify the error in this code snippet:
from scipy.stats import uniform
rv = uniform(loc=1, scale=4)
prob = rv.cdf(6)
print(prob)
medium
A. The scale should be 5 to cover up to 6
B. No error; code runs correctly
C. The loc parameter must be zero
D. The cdf method does not exist for uniform

Solution

  1. Step 1: Check parameters and range

    loc=1 and scale=4 means range is from 1 to 5 (1+4=5).
  2. Step 2: Evaluate cdf at 6

    6 is outside the range (greater than 5), so cdf(6) should return 1 (full probability).
  3. Step 3: Confirm method existence and output

    The cdf method exists for uniform and returns valid output even outside range.
  4. Final Answer:

    No error; code runs correctly -> Option B
  5. Quick Check:

    cdf exists and returns 1 for x > loc+scale [OK]
Hint: CDF returns 1 for x beyond range max [OK]
Common Mistakes:
  • Thinking scale must cover queried x
  • Assuming cdf method is missing
  • Believing loc must be zero
5. You want to model a uniform distribution for daily temperatures between 10°C and 20°C. Which code correctly calculates the probability that temperature is less than 15°C?
hard
A. rv = uniform(loc=10, scale=5) prob = rv.cdf(15)
B. rv = uniform(loc=10, scale=20) prob = rv.cdf(15)
C. rv = uniform(loc=0, scale=10) prob = rv.cdf(15)
D. rv = uniform(loc=10, scale=10) prob = rv.cdf(15)

Solution

  1. Step 1: Set correct loc and scale for temperature range

    Range is 10 to 20, so loc=10 and scale=20-10=10.
  2. Step 2: Calculate CDF at 15

    CDF at 15 is (15 - loc)/scale = (15-10)/10 = 0.5, which is the probability temperature is less than 15.
  3. Final Answer:

    rv = uniform(loc=10, scale=10) prob = rv.cdf(15) -> Option D
  4. Quick Check:

    prob = (15-10)/10 = 0.5 [OK]
Hint: CDF = (x - loc) / scale inside range [OK]
Common Mistakes:
  • Using wrong scale length
  • Setting loc to zero incorrectly
  • Calculating CDF outside range without adjustment
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard