53 lines
1.7 KiB
Python
53 lines
1.7 KiB
Python
import os
|
|
import numpy.testing as tst
|
|
from fcl_parser import FCLParser
|
|
import skfuzzy.control as ctrl
|
|
import pandas as pd
|
|
|
|
teams = pd.read_csv('teams_list.csv')
|
|
matches = pd.read_csv('matches_list.csv')
|
|
|
|
not_in_df = ['Miedź Legnica','Zagłębie Sosnowiec']
|
|
|
|
matches_input = []
|
|
for i in range(25,150):
|
|
team1 = matches['Team1'][i][:-1]
|
|
team2 = matches['Team2'][i][1:-1]
|
|
gameweek = matches['Gameweek'][i]
|
|
if((team1 not in not_in_df) and (team2 not in not_in_df)):
|
|
form_1 = teams.loc[ (teams['Team'] == team1) & (teams['Gameweek'] == gameweek)].Form.values[0]
|
|
temp_1 = teams.loc[ (teams['Team'] == team1) & (teams['Gameweek'] == gameweek)].Points.values[0]
|
|
form_2 = teams.loc[ (teams['Team'] == team2) & (teams['Gameweek'] == gameweek)].Form.values[0]
|
|
temp_2 = teams.loc[ (teams['Team'] == team2) & (teams['Gameweek'] == gameweek)].Points.values[0]
|
|
|
|
points = temp_1 - temp_2
|
|
|
|
temp = teams.loc[ (teams['Team'] == team1) & (teams['Gameweek'] == gameweek)].Result.values[0]
|
|
ground_truth = 0
|
|
if(temp == 'W'):
|
|
ground_truth = -1
|
|
elif(temp == 'D'):
|
|
ground_truth = 0
|
|
else:
|
|
ground_truth = 1
|
|
matches_input.append([form_1, form_2, points, ground_truth])
|
|
|
|
|
|
p = FCLParser() # Create the parser
|
|
infile = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'worker.fcl')
|
|
p.read_fcl_file(infile)
|
|
|
|
cs1 = ctrl.ControlSystem(p.rules)
|
|
|
|
module = ctrl.ControlSystemSimulation(cs1)
|
|
for i in range(50,75):
|
|
module.input['form1'] = matches_input[i][0]
|
|
module.input['form2'] = matches_input[i][1]
|
|
module.input['points'] = matches_input[i][2]
|
|
module.compute()
|
|
#print(str(module.output['result']) +": " + str(matches_input[i][3]))
|
|
|
|
print()
|
|
|
|
|