input: Write a function to develop an ML model in Python for predicting the winning team of football matches using data from the past 5 years of the Premier League. The function should load data from a CSV file, select relevant features, split the data into training and test sets, train a GradientBoostingClassifier, make predictions, and evaluate the model by printing the score.
  
  assert football_winner_prediction('data.csv')==0.75
  assert football_winner_prediction('empty_data.csv')==0
  assert football_winner_prediction('missing_data.csv')==0.68
  assert football_winner_prediction('incomplete_data.csv')==0.55
  assert football_winner_prediction('no_data.csv')==0
output: def football_winner_prediction(filename):
      try:
          import pandas as pd
          from sklearn.model_selection import train_test_split
          from sklearn.ensemble import GradientBoostingClassifier
          from sklearn.metrics import accuracy_score
  
          data = pd.read_csv(filename)
          if data.empty:
              return 0
          
          features = data.drop(columns=['winner'])
          target = data['winner']
          
          X_train, X_test, y_train, y_test = train_test_split(features, target, test_size=0.2, random_state=42)
          
          model = GradientBoostingClassifier()
          model.fit(X_train, y_train)
          
          y_pred = model.predict(X_test)
          score = accuracy_score(y_test, y_pred)
          
          return score
      except:
          return 0