Home Archives Search Feed Football Squares How To Use


PGA Rocket Mortgage Classic - 1st Rd: Will Bryson DeChambeau SHOOT UNDER PAR on the Front 9?


1:00PM
Yes: DeChambeau shoots under par on front 9
No: DeChambeau doesn’t shoot under par on front 9


Inputs to Solve

2019 Course Stats

##### User Estimates #####

hole_1 = {'2':38,
          '3':311,
          '4':98,
          '5':5}

hole_2 = {'3':62,
          '4':290,
          '5':89,
          '6':11}

hole_3 = {'3':52,
          '4':310,
          '5':84,
          '6':6}

hole_4 = {'2':72,
          '3':301,
          '4':70,
          '5':10}

hole_5 = {'3':72,
          '4':300,
          '5':75,
          '6':6}

hole_6 = {'3':68,
          '4':312,
          '5':65,
          '6':5}


hole_7 = {'3':60,
          '4':334,
          '5':56,
          '6':3,
          '7':1}

hole_8 = {'2':76,
          '3':317,
          '4':56,
          '5':3}

hole_9 = {'3':94,
          '4':301,
          '5':57,
          '6':1}
## Inputs Defined in the Problem

strokes = 33 #par
golfers = ['De1','De2','De3','De4',
           'De5','De6','De7','De8','De9']

Method to Solve

## [1]

import numpy as np
import pandas as pd

t=sum(hole_1.values())
for i in hole_1:
    hole_1[i] = hole_1[i]/t

t=sum(hole_2.values())
for i in hole_2:
    hole_2[i] = hole_2[i]/t
    
t=sum(hole_3.values())
for i in hole_3:
    hole_3[i] = hole_3[i]/t
    
t=sum(hole_4.values())
for i in hole_4:
    hole_4[i] = hole_4[i]/t

t=sum(hole_5.values())
for i in hole_5:
    hole_5[i] = hole_5[i]/t
    
t=sum(hole_6.values())
for i in hole_6:
    hole_6[i] = hole_6[i]/t

t=sum(hole_7.values())
for i in hole_7:
    hole_7[i] = hole_7[i]/t

t=sum(hole_8.values())
for i in hole_8:
    hole_8[i] = hole_8[i]/t
    
t=sum(hole_9.values())
for i in hole_9:
    hole_9[i] = hole_9[i]/t
 
y = np.array([(a,b,c,d,e,f,g,h,i) for a in hole_1.keys() for b in hole_2.keys() for c in hole_3.keys()
              for d in hole_4.keys() for e in hole_5.keys() for f in hole_6.keys()
              for g in hole_7.keys() for h in hole_8.keys() for i in hole_9.keys()])
scores = pd.DataFrame(y)
scores.columns = golfers
scores = scores.apply(pd.to_numeric)
scores['total_strokes'] = scores.sum(axis=1)

z = np.array([(a,b,c,d,e,f,g,h,i) for a in hole_1.values() for b in hole_2.values() for c in hole_3.values()
              for d in hole_4.values() for e in hole_5.values() for f in hole_6.values()
              for g in hole_7.values() for h in hole_8.values() for i in hole_9.values()])
probability = pd.DataFrame(z)
probability.columns = golfers
probability['p'] = probability.product(axis=1)
scores
De1 De2 De3 De4 De5 De6 De7 De8 De9 total_strokes
0 2 3 3 2 3 3 3 2 3 24
1 2 3 3 2 3 3 3 2 4 25
2 2 3 3 2 3 3 3 2 5 26
3 2 3 3 2 3 3 3 2 6 27
4 2 3 3 2 3 3 3 3 3 25
327675 5 6 6 5 6 6 7 4 6 51
327676 5 6 6 5 6 6 7 5 3 49
327677 5 6 6 5 6 6 7 5 4 50
327678 5 6 6 5 6 6 7 5 5 51
327679 5 6 6 5 6 6 7 5 6 52

327680 rows × 10 columns

probability
De1 De2 De3 De4 De5 De6 De7 De8 De9 p
0 0.084071 0.137168 0.115044 0.158940 0.158940 0.151111 0.132159 0.168142 0.207506 2.335224e-08
1 0.084071 0.137168 0.115044 0.158940 0.158940 0.151111 0.132159 0.168142 0.664459 7.477685e-08
2 0.084071 0.137168 0.115044 0.158940 0.158940 0.151111 0.132159 0.168142 0.125828 1.416040e-08
3 0.084071 0.137168 0.115044 0.158940 0.158940 0.151111 0.132159 0.168142 0.002208 2.484281e-10
4 0.084071 0.137168 0.115044 0.158940 0.158940 0.151111 0.132159 0.701327 0.207506 9.740342e-08
327675 0.011062 0.024336 0.013274 0.022075 0.013245 0.011111 0.002203 0.123894 0.002208 6.993692e-18
327676 0.011062 0.024336 0.013274 0.022075 0.013245 0.011111 0.002203 0.006637 0.207506 3.521824e-17
327677 0.011062 0.024336 0.013274 0.022075 0.013245 0.011111 0.002203 0.006637 0.664459 1.127733e-16
327678 0.011062 0.024336 0.013274 0.022075 0.013245 0.011111 0.002203 0.006637 0.125828 2.135574e-17
327679 0.011062 0.024336 0.013274 0.022075 0.013245 0.011111 0.002203 0.006637 0.002208 3.746621e-19

327680 rows × 10 columns

## [2]

p_par = probability['p'][scores['total_strokes']<=strokes].sum()

Solution

print("The probability DeChambeau shoots under par on front 9 is ~ %s" % round(p_par,3))
The probability DeChambeau shoots under par on front 9 is ~ 0.543



Info

download markdown file
email: krellabsinc@gmail.com
twitter: @KRELLabs

import sys
print(sys.version)
3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 16:07:46) [MSC v.1900 32 bit (Intel)]
Posted on 7/2/2020






← Next post    ·    Previous post →