Usa le capacità di importazione di Fogli Google per essere più produttivo
Pubblicato: 2022-08-04Negli Stati Uniti, lo sport è un grande affare . Circa 154 milioni di persone guardano gli sport in diretta almeno una volta al mese. E si prevede che quei numeri aumenteranno ogni anno.
Con il boom dello sport, le industrie artigianali come gli sport fantasy, DFS e i siti di scommesse di scena hanno offerto ai fan un altro motivo per guardare (e diventare più coinvolti). Questi giochi consentono agli spettatori accorti di guadagnare un sacco di soldi superando in astuzia altri giocatori (e scommesse sportive) per vincere concorsi online redditizi.
Il modo principale in cui i giocatori fantasy ottengono un vantaggio è utilizzare algoritmi proprietari per proiettare le prestazioni dei giocatori. Il massaggio delle statistiche dei giocatori consente ai giocatori di trovare oscure gemme statistiche che possono sfruttare per vincere più concorsi.
Oggi vedremo come puoi farlo utilizzando Fogli Google. Ci prepareremo per un'ipotetica bozza fantasy importando le statistiche dei giocatori da un sito web pubblico. Quindi, utilizzeremo il potere delle funzioni per trasformare, manipolare, filtrare e ordinare questi dati a nostro piacimento.
Stai ancora copiando contenuti in WordPress?
Stai sbagliando... dì addio per sempre a:
- ❌ Pulizia dell'HTML, rimozione di tag span, interruzioni di riga, ecc.
- ❌ Creazione manuale dei link di anchor ID del sommario per tutte le intestazioni,
- ❌ Ridimensionare e comprimere le immagini una per una prima di caricarle nuovamente nei tuoi contenuti,
- ❌ Ottimizzazione delle immagini con nomi di file descrittivi e attributi di testo alternativo,
- ❌ Incolla manualmente gli attributi target=“_blank” e/o “nofollow” su ogni singolo link
Sommario
1. Identifica la tua fonte di dati di destinazione online
2. Importa dati tabulari in Fogli Google
3. Limita le colonne che desideri importare
4. Filtra le righe importate in base a criteri personalizzati
5. Genera output di punti fantasy utilizzando un campo calcolato
6. Righe dell'ordine in base alla colonna calcolata
wpchtmlp id=15056
1. Identifica la tua fonte di dati di destinazione online
I partecipanti ai campionati a premi di fantacalcio sanno quanto sia importante valutare e classificare i giocatori prima di un draft di campionato. I giocatori fantasy normalmente iniziano con le statistiche della stagione precedente quando sviluppano le classifiche dei loro giocatori. Quindi, regolano le classifiche dei loro giocatori in base a una varietà di fattori:
● Potenziali lesioni
● Battaglie posizionali
● Proiezioni di punti fantasia
● Regole di punteggio della lega
● ecc
Per questo esempio, immaginiamo di creare classifiche dei giocatori per la posizione di quarterback in un campionato di fantacalcio. Ho trovato i dati necessari pubblicati sul sito della National Football League.
Il nostro obiettivo è importare questi dati statistici nei fogli di Google per creare le nostre classifiche personalizzate per la stagione in corso.
2. Importa dati tabulari in Fogli Google
La funzione che utilizzeremo per eseguire l'importazione dei dati è IMPORTHTML. La documentazione di Fogli Google per questa funzione mostra che dovremo fornire tre input:
- L'URL della pagina da esaminare
- La query che vogliamo eseguire (o "elenco" o "tabella", a seconda del markup strutturale che stiamo prendendo di mira).
- Un indice (a partire da 1) che indica quale tabella dall'origine HTML deve essere importata.
Abbiamo già identificato l'URL della pagina che stiamo prendendo di mira. La query che vogliamo specificare è la stringa "table" poiché le informazioni sono memorizzate in una tabella HTML.
Nota: se si desidera importare un elenco puntato (o numerato), specificare "elenco" anziché "tabella" come parametro secondario.
Infine, dobbiamo determinare dove risiede la nostra tabella di destinazione (in sequenza) nel codice sorgente HTML per la pagina stessa. Per fare ciò, fai clic con il pulsante destro del mouse in un punto qualsiasi della finestra del browser e seleziona "Visualizza sorgente". Quindi puoi cercare la stringa "<table" per determinare l'indice corretto.
Poiché la nostra tabella di destinazione è la prima (e unica) tabella in questa pagina, il nostro indice sarà 1.
Ecco la nostra formula iniziale:
=IMPORTHTML(“https://www.nfl.com/stats/player-stats/”, “tabella”, 1)
Dopo aver inserito la formula in A1, ecco come appaiono i dati:
Ottimo, è stato facile! Ma possiamo utilizzare più funzioni di Fogli Google per migliorare questo processo. Vedo diverse carenze con il nostro processo attuale:
- Non abbiamo bisogno di TUTTE le colonne della tabella di origine. Voglio limitare i miei dati ai soli campi che mi servono per creare le mie classifiche.
- Potrei voler specificare alcuni criteri minimi che un giocatore deve soddisfare prima di importarli (ho degli standard!).
- Vorrei una singola colonna aggiuntiva che riassuma le prestazioni del giocatore durante l'intera stagione.
- Dal momento che sto classificando questi giocatori, i migliori giocatori dovrebbero essere in cima.
Vediamo come possiamo raggiungere questi obiettivi.
3. Limita le colonne che desideri importare
Non ha senso ingombrare il nostro foglio di calcolo con dati non necessari. Fortunatamente, Fogli Google fornisce un modo per importare solo le colonne che desideriamo.
Guardando le colonne sulla nostra tabella di destinazione, sono interessato solo ad alcune delle colonne.
1. Giocatore (colonna 1)
2. Passi cantieri (colonna 2)
3. TD (colonna 7)
4. INT (colonna 8)
Queste colonne sono tutti i dati di cui ho bisogno per aiutarmi a classificare questi giocatori per la prossima stagione.
Per limitare le colonne importate, dobbiamo racchiudere la nostra funzione IMPORTHTML in una funzione di query. La funzione di query accetta due parametri:
- I dati che rappresentano l'intervallo di celle su cui eseguire la query.
- Una query da eseguire, scritta nel linguaggio di query dell'API di visualizzazione di Google.
Per il parametro data, utilizzeremo l'intera funzione IMPORTHTML che abbiamo già creato. Per la query, forniremo una query che ha come target le colonne che vogliamo includere nella nostra importazione.
=query(IMPORTHTML(“https://www.nfl.com/stats/player-stats/”, “table”, 1), “select Col1, Col2, Col7, Col8”)
Ora i nostri dati importati si presentano così, senza colonne non necessarie!
Quindi ora possiamo importare con successo il set di dati desiderato limitando anche le colonne che appariranno nei nostri fogli finali. Ma c'è ancora del lavoro da fare.
4. Filtra le righe importate in base a criteri personalizzati
Per la mia classifica, voglio considerare solo i quarterback che hanno lanciato per almeno 3000 yard. Più in generale, voglio filtrare le righe importate in base a criteri in una colonna specifica.
Per creare un filtro, regoleremo la nostra funzione di query esistente per includere una clausola WHERE. In particolare, indicheremo che vogliamo importare solo righe in cui il valore in Col2 è maggiore o uguale a 3000.
=query(IMPORTHTML(“https://www.nfl.com/stats/player-stats/”, “table”, 1), “select Col1, Col2, Col7, Col8 where Col2 >= 3000”)
Ora, quando esaminiamo il set di risultati, possiamo vedere che Lamar Jackson (l'unico giocatore con meno di 3000 yard passate) viene omesso. Più fortuna l'anno prossimo!
Nota: Lamar Jackson è uno stallone e normalmente lo includeremmo nelle nostre classifiche. Questo è teorico, gente!
5. Genera output di punti fantasy utilizzando un campo calcolato
Abbiamo importato con successo le nostre statistiche grezze del quarterback, tagliato le colonne a nostro piacimento e filtrato alcuni giocatori indesiderati. Questo è un ottimo inizio per creare le nostre classifiche personalizzate.
Ma le statistiche grezze non sono così utili quando si tratta di sport fantasy. Quello che dobbiamo davvero fare è calcolare l'output dei punti fantasy per ogni giocatore. Questo è un indicatore di successo molto migliore.
E certo, potremmo aggiungere manualmente un'altra colonna, eseguendo questo calcolo manualmente all'interno del nostro foglio. Ma semplifichiamo invece le cose eseguendo il calcolo durante il processo di importazione.
Sviluppo di una formula per il calcolo dei punti fantasia
Allora, qual è la formula che usiamo per calcolare l'output in punti fantasy per i quarterback?
Si scopre che questa formula varierà da campionato a campionato, in base alle tue specifiche configurazioni di punteggio. Ma per questo tutorial, useremo una formula simile al sistema di punteggio standard:
Punti fantasia = (Pass Yds / 25) + (TDs * 6) – (INTs * 2)
Modifica della query per includere il campo calcolato
Per integrare il campo calcolato, regoleremo la nostra query esistente per includere una colonna calcolata. In particolare, vogliamo aggiungere il nostro calcolo dei punti di fantasia al parametro di query della funzione di query.
=query(IMPORTHTML(“https://www.nfl.com/stats/player-stats/”, “table”, 1), “select Col1, Col2, Col7, Col8, (Col2/25)+(Col7* 6)-(Col8*2) dove Col2 >= 3000”)
Ora il nostro foglio di calcolo contiene l'output fantasy totale per ogni giocatore (una metrica molto più utile).
Ma quella nuova intestazione di colonna sembra davvero strana. Sarebbe molto più pulito se potessimo applicare un'etichetta personalizzata alla colonna ('Punti fantasia', per esempio) l. Si scopre che questo è possibile, anche se la sintassi è un po' strana.
Quello che dobbiamo fare è aggiungere più dati alla fine della nostra query:
1. La parola chiave "etichetta"
2. Ripetere il campo calcolato
3. L'intestazione di colonna desiderata come stringa
=query(IMPORTHTML(“https://www.nfl.com/stats/player-stats/”, “table”, 1), “select Col1, Col2, Col7, Col8, (Col2/25)+(Col7* 6)-(Col8*2) dove Col2 >= 3000 label (Col2/25)+(Col7*6)-(Col8*2) 'Punti Fantasia'”)
Ora è più così!
Quella colonna di Fantasy Points ha un aspetto molto migliore! Ma non credo di aver bisogno della parte decimale di quei numeri.
Per me, le cifre decimali aggiungono un rumore di fondo non necessario. Quindi vediamo se riusciamo a arrotondare quei numeri.
Per ottenere ciò, applicheremo un formato personalizzato alla nostra query. Nello specifico occorre specificare:
1. La parola chiave "FORMATO"
2. Ripetere il campo calcolato
3. Il formato numerico personalizzato ("#" nel nostro caso)
=query(IMPORTHTML(“https://www.nfl.com/stats/player-stats/”, “table”, 1), “select Col1, Col2, Col7, Col8, (Col2/25)+(Col7* 6)-(Col8*2) dove Col2 >= 3000 label (Col2/25)+(Col7*6)-(Col8*2) FORMATO 'Punti Fantasia' (Col2/25)+(Col7*6)-(Col8 *2) '#'”)
Ora il nostro tavolo sembra più pulito.
Abbiamo fatto molta strada e abbiamo semplificato il nostro processo di raccolta dei dati. Ma abbiamo ancora un passaggio per completare questo tutorial.
Poiché questo esercizio mira a creare classifiche per questi giocatori, sarebbe utile ordinarli quando importiamo i dati.
Lavoriamo su quello dopo.
6. Righe dell'ordine in base alla colonna calcolata
Faremo di nuovo affidamento sulla nostra query per specificare un ordine di riga iniziale per i nostri dati. Vogliamo ordinare le nostre righe in base alla colonna calcolata ("Punti fantasia"). Ma vogliamo farlo in ordine decrescente.
L'ordinamento può essere effettuato tramite la clausola ORDER BY DESC. Ancora una volta (e sfortunatamente), dovremo fare riferimento al nostro campo calcolato completo.
NOTA: non è possibile utilizzare l'intestazione della colonna del campo calcolato nella clausola ORDER BY perché nell'ordine delle operazioni SQL l'alias non viene applicato fino a dopo l'ORDER BY.
Ecco la nostra formula finale:
=query(IMPORTHTML(“https://www.nfl.com/stats/player-stats/”, “table”, 1), “select Col1, Col2, Col7, Col8, (Col2/25)+(Col7* 6)-(Col8*2) dove Col2 >= 3000 ORDINA PER (Col2/25)+(Col7*6)-(Col8*2) Etichetta DESC (Col2/25)+(Col7*6)-(Col8*2 ) FORMATO 'Punti Fantasia' (Col2/25)+(Col7*6)-(Col8*2) '#'”)
Il nostro set di dati finale è ora ordinato con i migliori giocatori per primi (secondo le regole di punteggio specifiche della nostra lega).
Le funzionalità di importazione dei dati di Fogli Google sono semplici ma efficaci
Che tu sia un fanatico delle statistiche, uno studente o un ricercatore, la versatilità delle funzionalità di importazione dei dati in Fogli Google fa risparmiare molto tempo. Utilizzando le funzioni descritte in questo articolo, ora hai il potere di importare, filtrare, ordinare e manipolare ulteriormente tutti i dati che puoi trovare su Internet.
E con oltre 6 miliardi di pagine web (e in continuo aumento), sembra che sarai molto impegnato.