CoolFace
Apppublic

Chittrarasu/Cricket-match-prediction-FastAPI

sourceHugging Faceupdated 2y agoView on Hugging Face
0likes
train_model.cpython-313.pyc81 linesDownload Raw Back to __pycache__
1�

2���g�<���SSKrSSKrSSKJrJr SSKJr SSK	J3r4 SSKJrJ
r
Jr SSKJr SrSrS	rSS5jrS
Sjrg)�N)�RandomForestClassifier�HistGradientBoostingRegressor)�MultiOutputRegressor)�train_test_split)�mean_squared_error�accuracy_score�r2_score)�StandardScalerc�^�[R"S0S[_S[_S[_S[_S[_S[_S[_S	[_S6[_S[_S[_S
[_S[_S[_S[_S[_S[_[[[[[[[S.ES9n[R"S0S[_S[_S[_S[_S[_S[_S[_S[_S[_S[_S[_S [_S![_S"[_S[_S#[_S$[_S%[0ES9n[R7"USS&S'9US'[R8"USS&S'9US'USRRS(:�USRRS):*-nXR5nURSS/5S*R5R5nURS*S+0S,S-9 URUSS/SS/S.S/9nURS+S00S,S-9 US0RUS0R55US0'URUSS/SS/S.S/9nURS+S10S,S-9 US1RUS1R55US1'UR!SS/S2S,S39 USR#S45R$R&US5'USR#S45R$R&US6'USR#S45R$R&US7'USR)S8S9S:.5RS95R#[5US;'US[R*"S<5-9[R,"S=5-US>'US>R/5mXSUS:HRS5R1S?S@SA.5R5nURSBSCSDSE.S,S-9 XSUS:HRS5R1S?S@SA.5R5nURSBSCSDSF.S,S-9 [R2"XE/5RSD5R1SGS?SH.5R5nURS5R55RSISJ9nURSSD0S,S-9 URS5R55RSISJ9nURSSD0S,S-9 [R2"Xx/5RSD5SIR5R5n	U	RUSDS.SK9RS95n10U11R7U4SLjS8SM9U12SN'U13SNU14SI-U15SO'U16SORS95U17SO'URU18SDSO/RSSPSQ.SR9SS.SK9nURU19SDSO/RSSSSQ.SR9SS.SK9nXSR9USR;55USR9USR;55-nX�SUS:HRSS/5R55RSTSJ9nURSS/5R55RSUSJ9n
U
RUSS/S.SK9RS95nX�SUS8:�nUSTUSU-USV'URU/SWQSS/S.SK9RS95nUS0R=SXSY9US0'US1R=SXSY9US1'X4$)ZNzdata/cleaned_ball_data.csv�match_id�season�20start_date�venue�innings�ball�batting_team�bowling_team�striker�non_striker�bowler�runs_off_bat�extras�wides�noballs�byes�legbyes)�penalty�wicket_type�player_dismissed�other_wicket_type�other_player_dismissed�cricsheet_id�21total_runs)�dtypezdata/cleaned_match_data.csv�id�city�date�team1�team2�toss_winner�
toss_decision�result�22dl_applied�winner�win_by_runs�win_by_wickets�player_of_match�umpire1�umpire2�umpire3�coerce)�errorsi�i�r#�23team_totalT��columns�inplace�left��left_on�right_on�how�team1_total�team2_total�ignore)r9r6r:�category�venue_index�24city_index�toss_winner_index�r��bat�field�toss_decision_indexz251970-01-01�1d�date_numeric�mean�count)rMr%�wins�win_date�team)r%rMr()r%rMr)�sum)rPrQ�matches)�name)�onr?c�>�[R"US5(a(US[R"STUS-26-S-5-$S$)NrQrPg��������imr)�pd�notna�np�exp)�x�max_dates ��<D:\Chitu\Cricket_match_outcome\backend\models\train_model.py�<lambda>�*load_and_preprocess_data.<locals>.<lambda>Js����EG�EM�EM�NO�PZ�N[�E\�E\�Q�v�Y�QS�QW�QW�X\�`h�kl�mw�kx�`x�Xy�|�X�RA�FA�Fc�bc�Fc���axis�
weighted_wins�win_rate�team1_win_rate)rRre�r9�team2_win_rate�h2h_wins�h2h_matches�h2h_win_rate)r(r)rki�)�upper)rX�read_csv�str�int�float�to_datetime�dt�year�copy�groupbyrS�reset_index�rename�merge�fillnarN�drop�astype�cat�codes�map�	Timestamp�	Timedelta�max�agg�concat�size�apply�isin�unique�clip)�ball_df�match_df�
odi_date_mask�team_scores�27team1_wins�28team2_wins�	team_wins�
team1_matches�
team2_matches�team_matches�team_win_rates�head_to_head�head_to_head_wins�head_to_head_matches�
h2h_win_ratesr]s               @r^�load_and_preprocess_datar�29s�����k�k�6�!�(�#�!�/7��!�>J�C�!�QX�Z]�!�'��!�.4�e�!�=K�S�!�R`�be�!�(��!�/<�S�!�CK�C�!�R`�ad�!�'��	!�.5�e�	!�>G��	!�PV�W\�	!�30(��!�31<A�QT�25�C�8;�S�`c�!�	�G��{�{�8�"�#�S�"�*2�C�"�9?��"�FL�c�"�&��"�-4�c�"�;H�#�"�O^�`c�"� (��"�/;�C�"�BJ�3�"� -�e�	"�6F�u�	"�O`�ad�	"�32 '��"�33.7��"�34>G��"�35NW�X[�"��H��~�~�h�v�&6�x�H�H�V���N�N�7�<�+@��R�G�L���f�%�(�(�-�-��5�(�6�:J�:M�:M�:R�:R�VZ�:Z�[�M��&�+�+�-�H��/�/�:�~�">�?��M�Q�Q�S�_�_�a�K�����l�;�T��J��~�~�k�D�'�?�j�Zh�Mi�ou�~�v�H��O�O�\�=�9�4�O�H�&�}�5�<�<�X�m�=T�=Y�=Y�=[�\�H�]���~�~�k�D�'�?�j�Zh�Mi�ou�~�v�H��O�O�\�=�9�4�O�H�&�}�5�<�<�X�m�=T�=Y�=Y�=[�\�H�]���M�M�>�:�6�x�QU�M�V�'�w�/�6�6�z�B�F�F�L�L�H�]��%�f�-�4�4�Z�@�D�D�J�J�H�\��%-�]�$;�$B�$B�:�$N�$R�$R�$X�$X�H�
 �!�&.��&?�&C�&C�A�XY�DZ�&[�&b�&b�cd�&e�&l�&l�mp�&q�H�
"�#�!)�� 0�2�<�<��3M� M�RT�R^�R^�_c�Rd�d�H�^����'�+�+�-�H��8�,���0A�A�B�J�J�7�S�W�W�io�w~�X�A�M�M�O�J����V�Z�RX�Y�cg��h��8�,���0A�A�B�J�J�7�S�W�W�io�w~�X�A�M�M�O�J����V�Z�RX�Y�cg��h��	�	�:�2�3�;�;�F�C�G�G�QV�dj�Hk�l�x�x�z�I��$�$�W�-�2�2�4�@�@�i�@�P�M����'�6�!2�D��A��$�$�W�-�2�2�4�@�@�i�@�P�M����'�6�!2�D��A��9�9�m�;�<�D�D�V�L�Y�W�[�[�]�i�i�k�L�!�'�'�	�f�&�'�I�P�P�QR�S�N�&4�&:�&:�<c�jk�&:�'l�N�?�#�!/��!@�>�R[�C\�!\�N�:��!/�36�!;�!B�!B�1�!E�N�:���~�~�n�f�j�-A�B�I�I�[b�qA�SB�I�C�HO�U[�~�\�H��~�~�n�f�j�-A�B�I�I�[b�qA�SB�I�C�HO�U[�~�\�H��W�-�2�2�8�G�3D�3K�3K�3M�N�QY�Za�Qb�Qg�Qg�hp�qx�hy�iA�iA�iC�RD�D�E�L�$�(�%;�|�G�?T�%T�U�]�]�_f�ho�^p�q�v�v�x�E�E�KU�E�V��'�/�/��'�0B�C�H�H�J�V�V�\i�V�j��(�.�.�/@�g�w�EW�]c�.�d�k�k�lm�n�M�!�}�"E��"J�K�M�$1�*�$=�
�m�@\�$\�M�.�!��~�~�m�,N�O�U\�^e�Tf�lr�~�s�z�z�{|�}�H�'�}�5�:�:��:�E�H�]��&�}�5�:�:��:�E�H�]����rac�<�U/SQR5nUSRS5RRUS'USRS5RRUS'USUS:HR[5US'[37R"5nUSUS'USUS'US	US	'US38US39'USUS'USUS'US
US
'USUS'USUS'USS-US'USnUSS/n[5nURU/SQ5n[40R"U/SQS9nUSUS'USUS'[XsSSS9up�p�[SSSSS9nURX�5 [SSSS9n
[U
5nURXt5 X�X4$) N)
r(r)r.r@rArDrErFrKr-rfrhrkr(rC�team1_indexr)�team2_indexr.�winner_indexrDrErFrKr-rfrhrk�r@rA)rDrErFrKr-rfrhrkrgg�������?�*)�	test_size�random_state����balanced)�n_estimators�	max_depthr��class_weight皙�����?�d�r��
learning_rate�max_iter)�dropnar{r|r}rorX�	DataFramer41�
fit_transformrr�fitrr)r��data�X�y_win�y_score�scaler�scaled_features�X_scaled�X_train�X_test�y_train�y_test�	win_model�base_score_model�score_models               r^�train_team_performance_modelr�`s���7�8�8>���	�42�w�-�.�.�z�:�>�>�D�D�D����w�-�.�.�z�:�>�>�D�D�D��� ��N�d�7�m�;�C�C�C�H�D���	����A��M�*�A�m���M�*�A�m���M�*�A�m���<�(�A�l�O�!�"5�6�A���#�$9�:�A����<�(�A�l�O��/�0�A����/�0�A����^�,�q�0�A�n���� �E��M�=�1�2�G��
�F��*�*�1�.o�,p�q�O��|�|�O�6w�x�H��
�.�H�]���
�.�H�]��(8��SV�eg�'h�$�G�W�'�C�2�TV�eo�p�I�
�M�M�'�#�5�"�TW�be�f��&�'7�8�K��O�O�H�&��4�/�/rac�z^�UR/SQ5SR5R5nURSS0SS9 UR	USSSS	9mTRS435SRS5TS'TR
U4S
jSS9TS'TSRS5RRTS'TSRS5RRTS'TSRS5RRTS'TSRSSS.5RS5R[5TS'T/SQR5nTRURS4n[!5nUR#U5n[%SSSS 9nUR'Xd5 XuT4$)!N)rrrr�player_totalTr8rr%r;r<rrN�44player_avgc�>�USUS:XaTTSUS:HSR5$TTSUS:HSR5$)Nrr(rfr)rh)rN)r\�player_datas �r^r_�*train_player_score_model.<locals>.<lambda>�s����78��7H�A�g�J�7V�@K�;�W^�K_�cd�es�ct�Kt�?u�wG�@H�@M�@M�@O�@l�\g�hs�t{�h|�AB�CQ�AR�iR�]S�Td�]e�]j�]j�]l�@lrarGrb�
team_win_raterrCrDr&rEr*rFr+rrHrK)r�r�rDrErFrKr�r�r�r�)rurSrvrwrx�	transformr�r{r|r}r~ryror��loc�indexr45r�rr�)	r�r��player_runsr��yr�r�r�r�s	        @r^�train_player_score_modelr��s�����/�/�"I�J�>�Z�^�^�`�l�l�n�K������?���N��#�#�H�j�4�U[�#�\�K�!,� 3� 3�I� >�~� N� X� X�Y_� `�K���#.�#4�#4�6l�st�$5�$u�K�� �!,�W�!5�!<�!<�Z�!H�!L�!L�!R�!R�K�
�� +�F� 3� :� :�:� F� J� J� P� P�K���'2�=�'A�'H�'H��'T�'X�'X�'^�'^�K�#�$�)4�_�)E�)I�)I�RS�^_�J`�)a�)h�)h�ij�)k�)r�)r�sv�)w�K�%�&�	�|�}�	E�	E�	G�A��������/�0�A��
�F��#�#�A�&�H�0�R�s�]`�a�K��O�O�H� ���+�+rac46�*�X	SR;dXSR;a[S5eX�SU:HSR5n47X�SU:HSR5nU(aX�SU:HSRSOU	SR5nU(aX�S	U:HS48RSOU	S49R5n
U(aX�SU:HSRSOU	SR5nUS
:XaSOUS:XaSOU	SR5nURX�X�X�//5nUR	U5SnUUU[US5S.$![a(n[S[U535 UUUSS.sSnA$SnAff=f)Nrrz)Player or team not found in training datar�r�rrDrr&rEr*rFrIrGrJrKr�)�playerrR�opponent�expected_score�Prediction error: �)	�values�50ValueErrorrNr��predict�round�	Exception�printrn)r�rRr�rr&r*r+r�r�r�r�r�rDrErFrK�features�predicted_score�es                   r^�predict_player_scorer��s)��51��Y�/�6�6�6�$�R`�Fa�Fh�Fh�:h��H�I�I� �Y�!7�6�!A�B�>�R�W�W�Y�52�#��$?�4�$G�H��Y�^�^�`�
�]b�k�g�"6�%�"?�@��O�V�V�WX�Y�hs�uB�iC�iH�iH�iJ��Y]�[�V�!4��!<�=�l�K�R�R�ST�U�cn�o{�c|�dB�dB�dD�53�vA�K�M�(B�k�(Q�R�Sf�g�n�n�op�q�GR�Sf�Gg�Gl�Gl�Gn��#0�E�#9�a�M�U\�D\�q�bm�oD�cE�cJ�cJ�cL���#�#�j��Zk�&B�%C�D��%�-�-�h�7��:���� �#�O�Q�7�	54�	55���56�
�"�3�q�6�(�+�,��� �!�	57�	58��59�s�EE � 60F�*F
�F�
Fc61
���XSR;dXSR;a[S5eX�SU:HSRSn62X�SU:HSRSnU(aX�SU:HSRSOUSR5nU(aX�S	U:HS63RSOUS64R5n
U(aX�SU:HSRSOUSR5nUS
:XaSOUS:XaSOUSR5n[R"U5(aSOUSR5nX�SU:HSRSnX�SU:HSRSnX�SU:HUSU:H-R65(d#X�SU:HUSU:H-SRSOSnU	R
X�X�UUUU//5nURX�USSUSSUSSUSSUSSUSSUSSUSS/66/5SS2S4SS-nURX�USSUSSUSSUSSUSSUSSUSSUSS/67/5SnUU[US5[USS5[USS5S.$![a)n[S[U535 UUSSSS.sSnA$SnAff=f) Nr(r)zTeam not found in training datar�rr�rrDr&rEr*rFrIrGrJrKr-rfrhrkr������r�)r(r)�win_probability_team1�expected_team1_score�expected_team2_scorer�gI@r�)
r�r�rNrX�isna�emptyr��
predict_probar�r�r�r�rn)r(r)rr&r*r+r�r�r�r�r�r�rDrErFrKr-rfrhrkr��win_probability�predicted_scoresr�s                        r^�predict_team_performancer��s4��'68��W�
�,�,�,��'�]�=Q�=Q�0Q��>�?�?���=�E�1�2�=�A�H�H��K����=�E�1�2�=�A�H�H��K��OT�d��=�E�1�2�=�A�H�H��K�Z^�_l�Zm�Zr�Zr�Zt��KO�T�v�,�$�.�/��=�D�D�Q�G�UY�Zf�Ug�Ul�Ul�Un�69�gr�D�m�!4��!C�D�EX�Y�`�`�ab�c�x|�~Q�yR�yW�yW�yY��#0�E�#9�a�M�U\�D\�q�bf�g|�b}�cC�cC�cE���'�'�-�0�0�Q�d�<�6H�6M�6M�6O�70��7�m�u�4�5�6F�G�N�N�q�Q���7�m�u�4�5�6F�G�N�N�q�Q��rv�~E�yF�JO�yO�TX�Y`�Ta�ej�Tj�xk�sl�sr�sr�t�'�]�e�3��W�
��8N�O�P�Q_�`�g�g�hi�j�xy���#�#�k�?P�gq�%3�^�\�&S�%T�U��#�1�1�K�h�WX�k�Z[�n�^f�gh�^i�jk�^l�3;�A�;�q�>�8�A�;�q�>�S[�\]�S^�_`�Sa�ck�lm�cn�op�cq�3;�A�;�q�>�8�A�;�q�>�4S�3T�U�UV�XY�UY�[�[\�^�`c�d��'�.�.��8�TU�;�WX�>�[c�de�[f�gh�[i�08���A�����A��PX�YZ�P[�\]�P^�`h�ij�`k�lm�`n�08���A�����A��1P�0Q�R�RS�U��71��%*�?�A�%>�$)�*:�1�*=�q�$A�$)�*:�1�*=�q�$A�72�	73���74�
�"�3�q�6�(�+�,���%)�$'�$'�75�	76��77�s�J6J9�978K,�K'�!K,�'K,)NNNNNNN)NNNNNNNN)�pandasrX�numpyrZ�sklearn.ensemblerr�sklearn.multioutputr�sklearn.model_selectionr�sklearn.metricsrrr	�sklearn.preprocessingr79r�r�r�r�r��rar^�<module>r�sM����R�4�4�H�H�0�S�l/0�d,�:im�CG�80�>cg�QU�)81ra