nfelodcm 0.1.8__py3-none-any.whl → 0.1.9__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- nfelodcm/nfelodcm/Engine/Assignments/assignment.py +6 -1
- nfelodcm/nfelodcm/Engine/Assignments/assignments/score_clean.py +47 -0
- nfelodcm/nfelodcm/Maps/coaches.json +59 -0
- nfelodcm/nfelodcm/Maps/games.json +1 -1
- nfelodcm/nfelodcm/Maps/hfa.json +39 -0
- nfelodcm/nfelodcm/Maps/srs_ratings.json +37 -0
- nfelodcm/nfelodcm/Maps/wt_ratings.json +34 -0
- {nfelodcm-0.1.8.dist-info → nfelodcm-0.1.9.dist-info}/METADATA +3 -3
- {nfelodcm-0.1.8.dist-info → nfelodcm-0.1.9.dist-info}/RECORD +11 -6
- {nfelodcm-0.1.8.dist-info → nfelodcm-0.1.9.dist-info}/WHEEL +1 -1
- {nfelodcm-0.1.8.dist-info → nfelodcm-0.1.9.dist-info}/top_level.txt +0 -0
@@ -1,5 +1,6 @@
|
|
1
1
|
from .assignments import (
|
2
|
-
fastr_team_id_repl, penalty_formatting, desc_based_plays
|
2
|
+
fastr_team_id_repl, penalty_formatting, desc_based_plays,
|
3
|
+
score_clean
|
3
4
|
)
|
4
5
|
|
5
6
|
## a dictionary that holds assignments and the columns they add ##
|
@@ -19,6 +20,10 @@ assignments = {
|
|
19
20
|
('rush_attempt_all', 'float32'),
|
20
21
|
('play_call', 'str'),
|
21
22
|
]
|
23
|
+
},
|
24
|
+
'score_clean' : {
|
25
|
+
'func' : score_clean,
|
26
|
+
'new_columns' : []
|
22
27
|
}
|
23
28
|
}
|
24
29
|
|
@@ -0,0 +1,47 @@
|
|
1
|
+
import pandas as pd
|
2
|
+
import numpy
|
3
|
+
|
4
|
+
manual_clean_dict = {
|
5
|
+
"2009_17_IND_BUF": {
|
6
|
+
"home_score": 30,
|
7
|
+
"away_score": 7
|
8
|
+
},
|
9
|
+
"2013_07_CIN_DET": {
|
10
|
+
"home_score": 24,
|
11
|
+
"away_score": 27
|
12
|
+
},
|
13
|
+
"2015_06_ARI_PIT": {
|
14
|
+
"home_score": 25,
|
15
|
+
"away_score": 13
|
16
|
+
},
|
17
|
+
"2015_09_PHI_DAL": {
|
18
|
+
"home_score": 27,
|
19
|
+
"away_score": 33
|
20
|
+
},
|
21
|
+
"2015_15_KC_BAL": {
|
22
|
+
"home_score": 14,
|
23
|
+
"away_score": 34
|
24
|
+
},
|
25
|
+
"2016_01_MIN_TEN": {
|
26
|
+
"home_score": 16,
|
27
|
+
"away_score": 25
|
28
|
+
},
|
29
|
+
"2016_05_NE_CLE": {
|
30
|
+
"home_score": 13,
|
31
|
+
"away_score": 33
|
32
|
+
}
|
33
|
+
}
|
34
|
+
|
35
|
+
def score_clean(df):
|
36
|
+
'''
|
37
|
+
Manually clean scores that are incorrect in the
|
38
|
+
game file
|
39
|
+
'''
|
40
|
+
## create a home and away map ##
|
41
|
+
home_map = {k:manual_clean_dict[k]['home_score'] for k in manual_clean_dict.keys()}
|
42
|
+
away_map = {k:manual_clean_dict[k]['away_score'] for k in manual_clean_dict.keys()}
|
43
|
+
## apply ##
|
44
|
+
df['home_score'] = df['game_id'].map(home_map).combine_first(df['home_score'])
|
45
|
+
df['away_score'] = df['game_id'].map(away_map).combine_first(df['away_score'])
|
46
|
+
## return
|
47
|
+
return df
|
@@ -0,0 +1,59 @@
|
|
1
|
+
{
|
2
|
+
"name": "coaches",
|
3
|
+
"description": "Aggregated head coaching stats",
|
4
|
+
"last_local_update": "2024-07-07T23:13:39.454179",
|
5
|
+
"download_url": "https://raw.githubusercontent.com/greerreNFL/coaches/main/coaches.csv",
|
6
|
+
"compression": null,
|
7
|
+
"engine": "c",
|
8
|
+
"freshness": {
|
9
|
+
"type": "gh_commit",
|
10
|
+
"gh_api_endpoint": "https://api.github.com/repos/greerreNFL/coaches/commits?path=coaches.csv",
|
11
|
+
"gh_release_tag": null,
|
12
|
+
"sla_seconds": 900,
|
13
|
+
"last_freshness_check": "2024-07-10T17:16:06.701316+00:00"
|
14
|
+
},
|
15
|
+
"iter": {
|
16
|
+
"type": null,
|
17
|
+
"start": null
|
18
|
+
},
|
19
|
+
"assignments": [],
|
20
|
+
"map": {
|
21
|
+
"coach": "object",
|
22
|
+
"seasons": "int32",
|
23
|
+
"is_active": "int32",
|
24
|
+
"games": "float32",
|
25
|
+
"wins": "float32",
|
26
|
+
"losses": "float32",
|
27
|
+
"ties": "int32",
|
28
|
+
"playoff_births": "float32",
|
29
|
+
"games_playoff": "float32",
|
30
|
+
"wins_playoff": "float32",
|
31
|
+
"losses_playoff": "float32",
|
32
|
+
"ties_playoff": "float32",
|
33
|
+
"games_superbowl": "float32",
|
34
|
+
"wins_superbowl": "float32",
|
35
|
+
"ats_pct": "float32",
|
36
|
+
"ats_return": "float32",
|
37
|
+
"ats_risked": "float32",
|
38
|
+
"avg_pf": "float32",
|
39
|
+
"avg_pa": "float32",
|
40
|
+
"avg_margin": "float32",
|
41
|
+
"avg_spread": "float32",
|
42
|
+
"ats_pct_home": "float32",
|
43
|
+
"ats_pct_away": "float32",
|
44
|
+
"ats_pct_playoff": "float32",
|
45
|
+
"ats_pct_favorite": "float32",
|
46
|
+
"ats_pct_underdog": "float32",
|
47
|
+
"ats_pct_div": "float32",
|
48
|
+
"ats_pct_non_div": "float32",
|
49
|
+
"ats_pct_bye": "float32",
|
50
|
+
"ats_pct_dome": "float32",
|
51
|
+
"ats_roi": "float32",
|
52
|
+
"win_pct": "float32",
|
53
|
+
"win_pct_playoff": "float32",
|
54
|
+
"teams": "object",
|
55
|
+
"pfr_coach_image_url": "object",
|
56
|
+
"pfr_coach_tree_hired_by": "object",
|
57
|
+
"pfr_coach_tree_hired": "object"
|
58
|
+
}
|
59
|
+
}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
{
|
2
|
+
"name": "hfa",
|
3
|
+
"description": "Estimated home field advantage by game",
|
4
|
+
"last_local_update": null,
|
5
|
+
"download_url": "https://raw.githubusercontent.com/greerreNFL/nfelohfa/main/estimated_hfa.csv",
|
6
|
+
"compression": null,
|
7
|
+
"engine": "c",
|
8
|
+
"freshness": {
|
9
|
+
"type": "gh_commit",
|
10
|
+
"gh_api_endpoint": "https://api.github.com/repos/greerreNFL/nfelohfa/commits?path=estimated_hfa.csv",
|
11
|
+
"gh_release_tag": null,
|
12
|
+
"sla_seconds": 900,
|
13
|
+
"last_freshness_check": "2024-07-10T17:16:06.701316+00:00"
|
14
|
+
},
|
15
|
+
"iter": {
|
16
|
+
"type": null,
|
17
|
+
"start": null
|
18
|
+
},
|
19
|
+
"assignments": [],
|
20
|
+
"map": {
|
21
|
+
"game_id": "object",
|
22
|
+
"season": "int32",
|
23
|
+
"week": "int32",
|
24
|
+
"home_team": "object",
|
25
|
+
"away_team": "object",
|
26
|
+
"home_bye": "int32",
|
27
|
+
"away_bye": "int32",
|
28
|
+
"home_time_advantage": "float32",
|
29
|
+
"dif_surface": "int32",
|
30
|
+
"div_game": "int32",
|
31
|
+
"hfa_base": "float32",
|
32
|
+
"home_bye_adj": "float32",
|
33
|
+
"away_bye_adj": "float32",
|
34
|
+
"home_time_advantage_adj": "float32",
|
35
|
+
"dif_surface_adj": "float32",
|
36
|
+
"div_game_adj": "float32",
|
37
|
+
"hfa_adj": "float32"
|
38
|
+
}
|
39
|
+
}
|
@@ -0,0 +1,37 @@
|
|
1
|
+
{
|
2
|
+
"name": "srs",
|
3
|
+
"description": "A Simple Ranking System implimentation for the NFL",
|
4
|
+
"last_local_update": "2024-07-07T23:13:39.454179",
|
5
|
+
"download_url": "https://raw.githubusercontent.com/greerreNFL/nfelosrs/main/srs_ratings.csv",
|
6
|
+
"compression": null,
|
7
|
+
"engine": "c",
|
8
|
+
"freshness": {
|
9
|
+
"type": "gh_commit",
|
10
|
+
"gh_api_endpoint": "https://api.github.com/repos/greerreNFL/nfelosrs/commits?path=srs_ratings.csv",
|
11
|
+
"gh_release_tag": null,
|
12
|
+
"sla_seconds": 900,
|
13
|
+
"last_freshness_check": "2024-07-10T17:16:06.701316+00:00"
|
14
|
+
},
|
15
|
+
"iter": {
|
16
|
+
"type": null,
|
17
|
+
"start": null
|
18
|
+
},
|
19
|
+
"assignments": [],
|
20
|
+
"map": {
|
21
|
+
"season": "int32",
|
22
|
+
"week": "int32",
|
23
|
+
"team": "object",
|
24
|
+
"avg_mov": "float32",
|
25
|
+
"avg_mov_of_opponents": "float32",
|
26
|
+
"srs_rating": "float32",
|
27
|
+
"srs_rating_normalized": "float32",
|
28
|
+
"bayesian_rating": "float32",
|
29
|
+
"bayesian_stdev": "float32",
|
30
|
+
"pre_season_wt_rating": "float32",
|
31
|
+
"qb_adjustment": "float32",
|
32
|
+
"srs_rating_w_qb_adj": "float32",
|
33
|
+
"srs_rating_normalized_w_qb_adj": "float32",
|
34
|
+
"bayesian_rating_w_qb_adj": "float32",
|
35
|
+
"pre_season_wt_rating_w_qb_adj": "float32"
|
36
|
+
}
|
37
|
+
}
|
@@ -0,0 +1,34 @@
|
|
1
|
+
{
|
2
|
+
"name": "wt_ratings",
|
3
|
+
"description": "Win Totals and ratings derived from win totals (WT Ratings)",
|
4
|
+
"last_local_update": "2024-07-07T23:13:39.454179",
|
5
|
+
"download_url": "https://raw.githubusercontent.com/greerreNFL/nfelosrs/main/wt_ratings.csv",
|
6
|
+
"compression": null,
|
7
|
+
"engine": "c",
|
8
|
+
"freshness": {
|
9
|
+
"type": "gh_commit",
|
10
|
+
"gh_api_endpoint": "https://api.github.com/repos/greerreNFL/nfelosrs/commits?path=wt_ratings.csv",
|
11
|
+
"gh_release_tag": null,
|
12
|
+
"sla_seconds": 900,
|
13
|
+
"last_freshness_check": "2024-07-10T17:16:06.701316+00:00"
|
14
|
+
},
|
15
|
+
"iter": {
|
16
|
+
"type": null,
|
17
|
+
"start": null
|
18
|
+
},
|
19
|
+
"assignments": [],
|
20
|
+
"map": {
|
21
|
+
"team": "object",
|
22
|
+
"season": "int32",
|
23
|
+
"wt_rating": "float32",
|
24
|
+
"wt_rating_elo": "float32",
|
25
|
+
"sos": "float32",
|
26
|
+
"line": "float32",
|
27
|
+
"over_odds": "int32",
|
28
|
+
"under_odds": "int32",
|
29
|
+
"hold": "float32",
|
30
|
+
"over_probability": "float32",
|
31
|
+
"under_probability": "float32",
|
32
|
+
"line_adj": "float32"
|
33
|
+
}
|
34
|
+
}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: nfelodcm
|
3
|
-
Version: 0.1.
|
3
|
+
Version: 0.1.9
|
4
4
|
Summary: Python package for loading and caching CSVs hosted on github into pandas dataframes
|
5
5
|
Author-email: Robert Greer <nfl@robbygreer.com>
|
6
6
|
Maintainer-email: Robert Greer <nfl@robbygreer.com>
|
@@ -13,9 +13,9 @@ Classifier: Programming Language :: Python :: 3
|
|
13
13
|
Classifier: Programming Language :: Python :: 3.10
|
14
14
|
Requires-Python: >=3.11
|
15
15
|
Description-Content-Type: text/markdown
|
16
|
-
Requires-Dist: setuptools
|
16
|
+
Requires-Dist: setuptools>=67.6.0
|
17
17
|
Requires-Dist: wheel
|
18
|
-
Requires-Dist: pandas
|
18
|
+
Requires-Dist: pandas>=1.5.3
|
19
19
|
Requires-Dist: requests
|
20
20
|
|
21
21
|
# nfelo DCM
|
@@ -4,18 +4,21 @@ nfelodcm/nfelodcm/tests.py,sha256=Fp077LGBajP9g2Tpg5G6mDatustNceMUVtCgh_uM53I,10
|
|
4
4
|
nfelodcm/nfelodcm/Engine/DCMTable.py,sha256=ZHHDNmhpdJ2JTc-y3iYe4jjXcViOjRNw_zdF4-UB2jE,3024
|
5
5
|
nfelodcm/nfelodcm/Engine/__init__.py,sha256=vEEWcIBE4KLHoBCT1s2AIeSZxMfv1bcAqUNAJzSMSMo,31
|
6
6
|
nfelodcm/nfelodcm/Engine/Assignments/__init__.py,sha256=IPKxTBbO3b0xaO922zkwif0FFd8Xqe3ZvCIFjhYg1oE,80
|
7
|
-
nfelodcm/nfelodcm/Engine/Assignments/assignment.py,sha256=
|
7
|
+
nfelodcm/nfelodcm/Engine/Assignments/assignment.py,sha256=inDCtt0DxY1HFidxp2kZUym7X6J3kaBjDASstmuRtIA,1312
|
8
8
|
nfelodcm/nfelodcm/Engine/Assignments/assignments/__init__.py,sha256=Rvz5gV9yxxQFd0wE6qek6xM2lejrIEneHVdhKac1eyU,161
|
9
9
|
nfelodcm/nfelodcm/Engine/Assignments/assignments/desc_based_plays.py,sha256=LAXOlE-IW8A49rRagxcAGRao_4c2RdC7AK6_iV3M2Vc,1810
|
10
10
|
nfelodcm/nfelodcm/Engine/Assignments/assignments/fastr_team_repl.py,sha256=TJGcnY_8yEBwnBxXJ5m9eQ5YWfnqN2UAhaVBLeGJ8sw,976
|
11
11
|
nfelodcm/nfelodcm/Engine/Assignments/assignments/penalty_formatting.py,sha256=Ia3x_Z8EnzI4Bz_6LEfY0ICWvdmyzJsckrOUXGYgfRY,517
|
12
|
+
nfelodcm/nfelodcm/Engine/Assignments/assignments/score_clean.py,sha256=2-MgCH1m0XnoUoMwfBQFLCn3mLTflWin6LhAfHPoyqI,1162
|
12
13
|
nfelodcm/nfelodcm/Engine/Primatives/DataPull.py,sha256=x1SUfCpxbXr923o52ExLMJItVKujSfcBeJDrDkFop70,2909
|
13
14
|
nfelodcm/nfelodcm/Engine/Primatives/Freshness.py,sha256=VyRZmW6LI3jd43aWLo7OTnX3ZgGkwu85hn4r3_3ChZo,9803
|
14
15
|
nfelodcm/nfelodcm/Engine/Primatives/LocalIO.py,sha256=LRKpP0t30t_ZUfIi3ASULkB4aKVV4cINZbp1wbrayac,2701
|
15
16
|
nfelodcm/nfelodcm/Engine/Primatives/TableMap.py,sha256=M_T2TTxbT2B1Mv9hY3Ocli_AkoPirNUJDZ8n1HQPlgM,2636
|
16
17
|
nfelodcm/nfelodcm/Engine/Primatives/__init__.py,sha256=JUHF_8_1vqbp7M5rJfDwzqkgi6UuLTPp_lxCw7t1uwc,124
|
18
|
+
nfelodcm/nfelodcm/Maps/coaches.json,sha256=wfyCH_NMHR2_bLhdRovDTA6QErkU-xvaIPib9t-rHCM,1713
|
17
19
|
nfelodcm/nfelodcm/Maps/filmmargins.json,sha256=LDjMglK3cFEqGepHjRTE4b4VPyrm2IYN_2uqGnSvuzg,945
|
18
|
-
nfelodcm/nfelodcm/Maps/games.json,sha256=
|
20
|
+
nfelodcm/nfelodcm/Maps/games.json,sha256=6kHv9kN7cT9PKfAdPbWw95Eagx8wmwlvRlVK0SU8l-c,1850
|
21
|
+
nfelodcm/nfelodcm/Maps/hfa.json,sha256=j3NjGca_O7lgxJ9By34J4l2Zpenh6ExOQwpMUVl41rA,1088
|
19
22
|
nfelodcm/nfelodcm/Maps/logos.json,sha256=ftUHOFtgwQIbpOFcUU2Zcqw_kZyJoALHbhCuYvIrtsg,1133
|
20
23
|
nfelodcm/nfelodcm/Maps/market_data.json,sha256=3tvrlF1VlXsIj6CO70EewCyUuqRhJ75UyvnKTDvJrrY,1994
|
21
24
|
nfelodcm/nfelodcm/Maps/participants.json,sha256=2tUeihDe-mQ8KqT9lFYFd8cREvO9xTjdMYBte3ghXD0,1325
|
@@ -25,14 +28,16 @@ nfelodcm/nfelodcm/Maps/players.json,sha256=sqhPluayAiIpEzFPxyBvV51xbbj_xuTaWXIlU
|
|
25
28
|
nfelodcm/nfelodcm/Maps/qbelo.json,sha256=U3_4Tr5iMWDKYq1Z8EdaNnRTxVmS4HsTtjJbCyCZwLk,1508
|
26
29
|
nfelodcm/nfelodcm/Maps/qbr.json,sha256=VtQugxb8owcKkrulVmoxZiFH175advnM-NpyGKc_OT0,1207
|
27
30
|
nfelodcm/nfelodcm/Maps/rosters.json,sha256=9tAvjDW7C2vImUFjP-BbgGpz7IZGlaizqjqMyalVtg0,1435
|
31
|
+
nfelodcm/nfelodcm/Maps/srs_ratings.json,sha256=iL135YadWWktcbniLHJ4XvVbR8exI7_WcYppOe2MXWQ,1150
|
28
32
|
nfelodcm/nfelodcm/Maps/wepa.json,sha256=w2fmCODJcGY_RUEv0UeqVO-ugpb8si9Nm1VLwrMAQA0,1130
|
33
|
+
nfelodcm/nfelodcm/Maps/wt_ratings.json,sha256=6GhhOph5DUy-WOaL6esaUAIlm0BYrvo6l5bqJfDAtP4,972
|
29
34
|
nfelodcm/nfelodcm/Utilities/__init__.py,sha256=KZPooahoLm1wPGw_mfOUI92FHLSvFNpMJmaRu6SCHq8,269
|
30
35
|
nfelodcm/nfelodcm/Utilities/checks.py,sha256=oUIqRFywLBYpN2e5iCR7ReLGrQNVgJxbNe458rgupCU,4179
|
31
36
|
nfelodcm/nfelodcm/Utilities/extract_map.py,sha256=DVITMr0mlP6p2V1ZdaIcbEavs-FZ28-EZ885maiS_KU,969
|
32
37
|
nfelodcm/nfelodcm/Utilities/global_variables.json,sha256=VtKM5XRfpJYAaVYRoLO1Dc5loKzccdf6Z1Q7ai9-W00,298
|
33
38
|
nfelodcm/nfelodcm/Utilities/retrieve_season_state.py,sha256=ZrBaMWmo2DA9OZqZ6MBWmrY9Llkc5OUfxmDk7EB1tRU,579
|
34
39
|
nfelodcm/nfelodcm/Utilities/set_season_state.py,sha256=Y5fvop3EZfWcx2F85MtSNEGnwjofWyEMg4_HLTenAUA,3737
|
35
|
-
nfelodcm-0.1.
|
36
|
-
nfelodcm-0.1.
|
37
|
-
nfelodcm-0.1.
|
38
|
-
nfelodcm-0.1.
|
40
|
+
nfelodcm-0.1.9.dist-info/METADATA,sha256=Xtz-mOfZQdVR721GMwl091Q4aqvoSemK72tpXnXlnSk,4407
|
41
|
+
nfelodcm-0.1.9.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
|
42
|
+
nfelodcm-0.1.9.dist-info/top_level.txt,sha256=SlNA7_yZSwWvZIl9Md6brBH_C7nAYnATe4CrvuUXOGo,9
|
43
|
+
nfelodcm-0.1.9.dist-info/RECORD,,
|
File without changes
|