Back to list
vinicius-mouzinho

consolidador-wyscout

by vinicius-mouzinho

1🍴 0📅 Jan 24, 2026

SKILL.md


name: consolidador-wyscout description: Consolida arquivos XLSX do Wyscout em um único arquivo PKL para o Vascout. Use quando o usuário mencionar "atualizar dados", "consolidar ligas", "juntar arquivos Wyscout", "gerar PKL", ou quando novos arquivos XLSX forem adicionados à pasta dataframes/.

Consolidador de Dados Wyscout

Consolida múltiplos arquivos XLSX exportados do Wyscout em um único arquivo Todos os jogadores.pkl para uso no aplicativo Vascout.

Localização dos Arquivos

app-vasco-streamlit/
├── dataframes/                    # Pasta com arquivos XLSX e PKL
│   ├── Brasil 2025.xlsx
│   ├── Argentina 2025.xlsx
│   ├── ADD Brasil 2025.xlsx       # Arquivo para adicionar registros
│   ├── Todos os jogadores.pkl     # OUTPUT consolidado
│   └── ...
├── scripts/
│   └── atualizar_dados.py         # Script principal de consolidação
└── dados/
    └── carregar_df_streamlit.py   # Carregador usado pelo app

Como Executar

Via Script (Recomendado)

cd "C:\Users\vinicius.vieira\OneDrive - Vasco SAF\Documentos\GitHub\app-vasco-streamlit"
python scripts/atualizar_dados.py

Opções disponíveis:

  • --apenas-pkl: Só consolida XLSX → PKL, não importa para PostgreSQL
  • --apenas-pg: Só importa PKL existente para PostgreSQL
  • --liga "Brasil 2025": Processa apenas uma liga específica

Via Notebook (Alternativa)

Executar União arquivos Wyscout.ipynb na raiz do projeto.

Fluxo de Consolidação

  1. Aplicar ADDs: Arquivos ADD [Liga].xlsx são mesclados ao arquivo principal correspondente
  2. Resolver duplicados: Arquivos com sufixo (2), (3) mantêm apenas a versão mais recente
  3. Consolidar XLSX: Todos os .xlsx são lidos e concatenados
  4. Adicionar coluna Liga: Nome do arquivo (sem extensão) vira a coluna Liga
  5. Normalizar posições: Posições como RAMFRW, LCBCB
  6. Calcular colunas derivadas: Liga_base, Temporada, Força da Liga
  7. Salvar PKL: Output em dataframes/Todos os jogadores.pkl

Nomenclatura de Arquivos XLSX

  • Padrão: [País/Liga] [Temporada].xlsx

    • Ex: Brasil 2025.xlsx, Alemanha 24-25.xlsx, Inglaterra B 25-26.xlsx
  • Arquivos ADD: ADD [País/Liga] [Temporada].xlsx

    • Ex: ADD Brasil 2025.xlsx → adiciona registros ao Brasil 2025.xlsx
    • O arquivo ADD é removido após ser processado
  • Duplicados: Arquivos com (2), (3) etc substituem versões anteriores

    • Ex: Brasil 2025.xlsx + Brasil 2025 (2).xlsx → mantém apenas (2) e renomeia

Normalização de Posições

mapeamento = {
    'RAMF': 'RW', 'LAMF': 'LW',     # Meias-atacantes → Extremos
    'RDMF': 'DMF', 'LDMF': 'DMF',   # Volantes laterais → DMF
    'RCMF': 'CMF', 'LCMF': 'CMF',   # Meias laterais → CMF
    'LWB': 'LB', 'RWB': 'RB',       # Alas → Laterais
    'LWF': 'LW', 'RWF': 'RW',       # Pontas → Extremos
    'RCB': 'CB', 'LCB': 'CB'        # Zagueiros laterais → CB
}

Colunas Geradas

Após consolidação, o DataFrame possui:

ColunaDescriçãoExemplo
LigaNome completo do arquivo"Brasil 2025"
Liga_baseLiga sem temporada"Brasil"
TemporadaToken de temporada extraído"2025" ou "24-25"
Força da LigaValor numérico (50-100)90.0 (Brasil)
PosiçãoPosição normalizada"CB", "DMF", "CF"

Métricas Derivadas (Calculadas em Runtime)

O app calcula automaticamente ao carregar o PKL via adicionar_metricas_derivadas():

  • Ações com a bola/90
  • Dribles certos/90
  • Passes progressivos certos/90
  • Perdas de bola/90
  • Gols esperados (sem pênaltis)/90
  • Posse na equipe (%)
  • E outras ~15 métricas

Nota: Métricas compostas (z-scores ponderados) são calculadas nas páginas específicas do app, não no PKL.

Força das Ligas (liga_forca)

# TIER S+ 
'Inglaterra': 100.0
# TIER S
'Espanha': 97.0, 'Itália': 96.0, 'Alemanha': 95.0, 'França': 94.0
# TIER A
'Brasil': 90.0, 'Portugal': 87.0
# TIER B+
'Argentina': 83.0, 'México': 82.0
# ...até 'Bolívia': 50.0

Ver utilitarios/constantes.py para lista completa.

Troubleshooting

"Coluna Liga não encontrada"

O arquivo PKL foi gerado sem a coluna Liga. Regere com o script.

"Arquivo ADD não foi aplicado"

Verificar se o nome corresponde exatamente (ex: ADD Brasil 2025.xlsxBrasil 2025.xlsx)

"Posição não normalizada"

Adicionar mapeamento em dados/carregar_dados.pynormalizar_posicoes()

"Força da Liga = 80.0 (default)"

Adicionar a liga em utilitarios/constantes.pyliga_forca

Score

Total Score

40/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon