Calcolo del coefficiente di Gini: disuguaglianza da 0 a 1
Il calcolatore del coefficiente di Gini trasforma un elenco di redditi o valori non negativi in una misura della disuguaglianza molto diffusa.
Esegui gratis nel browser
Un risultato pari a zero indica che tutti i valori inseriti sono uguali; quanto più si avvicina a uno, tanto maggiore è la concentrazione del totale in poche osservazioni. Il calcolo è deterministico, accetta dati non ordinati e restituisce anche il numero delle osservazioni. È indicato per confronti rapidi, report riproducibili e procedure statistiche automatizzate senza fogli di calcolo o programmi personalizzati.
Interpreti il coefficiente nel suo contesto
Il coefficiente di Gini riassume la distribuzione di una variabile non negativa con un numero compreso tra zero e uno. Zero rappresenta l’uguaglianza completa: ogni osservazione ha esattamente lo stesso valore. Quando il coefficiente cresce, una quota minore delle osservazioni concentra una parte maggiore del totale. La misura è quindi utile per confrontare redditi, spesa dei clienti, saldi, carichi di lavoro o altre quantità non negative. Rimane però una sintesi, non una descrizione completa. Due insiemi possono produrre lo stesso risultato pur avendo forme, mediane, estremi e dimensioni molto diversi. Registri sempre che cosa rappresenta ciascun valore, quali osservazioni sono incluse e se i campioni sono confrontabili. Non confronti superficialmente il reddito familiare con il patrimonio individuale. Il calcolatore restituisce anche il conteggio, così da conservare un contesto minimo. Se è importante conoscere la forma della distribuzione, affianchi grafici e statistiche descrittive; consideri il Gini un segnale sintetico, non un giudizio definitivo sull’equità o sulle politiche.
Comprenda come viene eseguito il calcolo
Può inviare i valori in qualunque ordine: il calcolatore ne crea prima una copia e la ordina dal minore al maggiore. Applica poi la forma a somma ponderata della formula di Gini, mettendo in relazione ciascuna posizione ordinata con il totale delle osservazioni. Il metodo produce lo stesso coefficiente di popolazione ottenuto dalla media di tutte le differenze assolute a coppie, ma evita di costruire ogni coppia e risulta molto più efficiente per array lunghi. Valori uguali danno zero. Se tutti i valori sono zero, la formula consueta dividerebbe per un totale nullo; qui il risultato è definito come zero perché le osservazioni sono identiche. Il coefficiente non viene arrotondato e può quindi mostrare i normali effetti della precisione numerica di JavaScript. I valori negativi sono rifiutati perché l’interpretazione da zero a uno richiede un dominio non negativo. Sono esclusi anche i valori non finiti, che non possono produrre una statistica deterministica significativa.
Prepari i dati e confronti i risultati con rigore
Costruisca l’array con osservazioni espresse nella stessa unità e riferite allo stesso periodo. Rimuova etichette, simboli di valuta, indicatori di dati mancanti e righe di subtotale. Gli zeri sono validi e spesso significativi: non li elimini solo perché abbassano una media; li includa quando rappresentano veri membri della popolazione privi di quantità misurata. Per confrontare aree, gruppi o periodi, applichi sempre gli stessi criteri di inclusione. Una variazione del campionamento può spostare il coefficiente anche se la distribuzione sottostante non cambia. Valuti inoltre eventuali correzioni per dimensione familiare, inflazione, potere d’acquisto o esposizione. L’endpoint rifiuta array vuoti, numeri negativi, elementi non numerici e liste oltre il limite pubblicato, offrendo agli automatismi un errore chiaro. La versione nel browser è adatta a un controllo immediato; l’API costa $0.002 per richiesta ed è ideale per attività ripetibili. Conservi insieme definizione, filtri, conteggio e coefficiente per consentire una successiva riproduzione.
Casi d'uso
Confrontare distribuzioni di reddito
Misuri la concentrazione del reddito in popolazioni o periodi definiti con criteri coerenti.
Monitorare la concentrazione dei clienti
Riassuma se ricavi o valore dei conti sono diffusi ampiamente oppure concentrati in pochi clienti.
Valutare l’equilibrio dei carichi
Confronti conteggi non negativi di attività tra persone, macchine o code con una misura riproducibile.
Domande frequenti
Che cosa indica un coefficiente di Gini pari a zero?
Indica che tutte le osservazioni inserite sono uguali. Il calcolatore restituisce zero anche quando sono tutte nulle.
L’array deve essere ordinato?
No. Il calcolo ordina internamente una copia dei valori e non modifica l’array inviato.
Posso includere valori pari a zero?
Sì. Zero è un’osservazione non negativa valida e va incluso quando rappresenta un valore reale.
Perché i valori negativi vengono rifiutati?
L’interpretazione standard tra zero e uno adottata qui presuppone valori non negativi; quelli negativi possono invalidarla.
Viene applicata una correzione per il campione?
No. Viene restituito il coefficiente di popolazione standard dell’array inviato, senza correzione per campioni finiti.
Quanto costa una richiesta API?
Ogni richiesta API costa $0.002. Lo stesso calcolo deterministico può essere eseguito anche nel browser.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/stat/gini-coefficient \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"values":[10,20,30,40]}'const res = await fetch("https://api.kit.forhosting.com/stat/gini-coefficient", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"values": [
10,
20,
30,
40
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/stat/gini-coefficient",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"values": [
10,
20,
30,
40
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/stat/gini-coefficient", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"values":[10,20,30,40]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"values":[10,20,30,40]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/stat/gini-coefficient", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"values": [
10,
20,
30,
40
]
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "stat.gini_coefficient",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
max_items | 100000 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |