{ "cells": [ { "cell_type": "markdown", "id": "5c9991b1", "metadata": {}, "source": [ "Generate player votes database, containing votes for Serie A matchday and player.\n", "\n", "Votes data is manually downloaded from https://www.fantacalcio.it/voti-fantacalcio-serie-a\n", "\n", "Serie A calendar is loaded from another file, to add information not containing in votes files: home/away, team opponent." ] }, { "cell_type": "code", "execution_count": 1, "id": "b63beb69", "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "import numpy as np" ] }, { "cell_type": "code", "execution_count": 2, "id": "a3c39376", "metadata": {}, "outputs": [], "source": [ "cal = np.array(pd.read_excel('fantacalcio/seriea_calendar.xlsx', header = None))\n", "\n", "cal_df = pd.DataFrame(columns = ['matchday', 'team1', 'team2'])\n", "\n", "matchday = 0\n", "\n", "for i in range(cal.shape[0]):\n", " if(cal[i, 0][0].isnumeric()):\n", " matchday = matchday + 1\n", " continue\n", " \n", " teams = cal[i, 0].split('-')\n", " \n", " frame = pd.DataFrame([[matchday, teams[0], teams[1]]], columns = cal_df.columns)\n", "\n", " cal_df = pd.concat([cal_df, frame], ignore_index = True)\n", " " ] }, { "cell_type": "code", "execution_count": 3, "id": "92d3c6fb", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
| \n", " | matchday | \n", "team1 | \n", "team2 | \n", "
|---|---|---|---|
| 0 | \n", "1 | \n", "Fiorentina | \n", "Cremonese | \n", "
| 1 | \n", "1 | \n", "Verona | \n", "Napoli | \n", "
| 2 | \n", "1 | \n", "Juventus | \n", "Sassuolo | \n", "
| 3 | \n", "1 | \n", "Lazio | \n", "Bologna | \n", "
| 4 | \n", "1 | \n", "Lecce | \n", "Inter | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "
| 375 | \n", "38 | \n", "Lecce | \n", "Bologna | \n", "
| 376 | \n", "38 | \n", "Sassuolo | \n", "Fiorentina | \n", "
| 377 | \n", "38 | \n", "Milan | \n", "Verona | \n", "
| 378 | \n", "38 | \n", "Torino | \n", "Inter | \n", "
| 379 | \n", "38 | \n", "Udinese | \n", "Juventus | \n", "
380 rows × 3 columns
\n", "| \n", " | matchday | \n", "player | \n", "team | \n", "oppteam | \n", "home | \n", "vote | \n", "goals | \n", "assists | \n", "cards_malus | \n", "fantavote | \n", "
|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "1 | \n", "Musso | \n", "Atalanta | \n", "Sampdoria | \n", "0 | \n", "6.0 | \n", "0 | \n", "0 | \n", "0.5 | \n", "5.5 | \n", "
| 1 | \n", "1 | \n", "Toloi | \n", "Atalanta | \n", "Sampdoria | \n", "0 | \n", "7.0 | \n", "1 | \n", "0 | \n", "0.0 | \n", "10.0 | \n", "
| 2 | \n", "1 | \n", "Djimsiti | \n", "Atalanta | \n", "Sampdoria | \n", "0 | \n", "6.0 | \n", "0 | \n", "0 | \n", "0.0 | \n", "6.0 | \n", "
| 3 | \n", "1 | \n", "Hateboer | \n", "Atalanta | \n", "Sampdoria | \n", "0 | \n", "6.0 | \n", "0 | \n", "0 | \n", "0.5 | \n", "5.5 | \n", "
| 4 | \n", "1 | \n", "Okoli | \n", "Atalanta | \n", "Sampdoria | \n", "0 | \n", "5.5 | \n", "0 | \n", "0 | \n", "0.5 | \n", "5.0 | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
| 5423 | \n", "19 | \n", "Ilic | \n", "Verona | \n", "Lecce | \n", "1 | \n", "7.0 | \n", "0 | \n", "1 | \n", "0.0 | \n", "8.0 | \n", "
| 5424 | \n", "19 | \n", "Sulemana I. | \n", "Verona | \n", "Lecce | \n", "1 | \n", "6.0 | \n", "0 | \n", "0 | \n", "0.0 | \n", "6.0 | \n", "
| 5425 | \n", "19 | \n", "Lasagna | \n", "Verona | \n", "Lecce | \n", "1 | \n", "5.5 | \n", "0 | \n", "0 | \n", "0.0 | \n", "5.5 | \n", "
| 5426 | \n", "19 | \n", "Kallon | \n", "Verona | \n", "Lecce | \n", "1 | \n", "6.0 | \n", "0 | \n", "0 | \n", "0.0 | \n", "6.0 | \n", "
| 5427 | \n", "19 | \n", "Djuric | \n", "Verona | \n", "Lecce | \n", "1 | \n", "6.0 | \n", "0 | \n", "0 | \n", "0.0 | \n", "6.0 | \n", "
5428 rows × 10 columns
\n", "| \n", " | matchday | \n", "team1 | \n", "team2 | \n", "
|---|---|---|---|
| 0 | \n", "1 | \n", "Verona | \n", "Sassuolo | \n", "
| 1 | \n", "1 | \n", "Inter | \n", "Genoa | \n", "
| 2 | \n", "1 | \n", "Empoli | \n", "Lazio | \n", "
| 3 | \n", "1 | \n", "Torino | \n", "Atalanta | \n", "
| 4 | \n", "1 | \n", "Bologna | \n", "Salernitana | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "
| 375 | \n", "38 | \n", "Spezia | \n", "Napoli | \n", "
| 376 | \n", "38 | \n", "Sassuolo | \n", "Milan | \n", "
| 377 | \n", "38 | \n", "Inter | \n", "Sampdoria | \n", "
| 378 | \n", "38 | \n", "Salernitana | \n", "Udinese | \n", "
| 379 | \n", "38 | \n", "Venezia | \n", "Cagliari | \n", "
380 rows × 3 columns
\n", "| \n", " | matchday | \n", "team1 | \n", "team2 | \n", "
|---|---|---|---|
| 0 | \n", "1 | \n", "Fiorentina | \n", "Torino | \n", "
| 1 | \n", "1 | \n", "Verona | \n", "Roma | \n", "
| 2 | \n", "1 | \n", "Parma | \n", "Napoli | \n", "
| 3 | \n", "1 | \n", "Genoa | \n", "Crotone | \n", "
| 4 | \n", "1 | \n", "Sassuolo | \n", "Cagliari | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "
| 375 | \n", "38 | \n", "Sassuolo | \n", "Lazio | \n", "
| 376 | \n", "38 | \n", "Atalanta | \n", "Milan | \n", "
| 377 | \n", "38 | \n", "Torino | \n", "Benevento | \n", "
| 378 | \n", "38 | \n", "Bologna | \n", "Juventus | \n", "
| 379 | \n", "38 | \n", "Napoli | \n", "Verona | \n", "
380 rows × 3 columns
\n", "