Come calcoliamo domanda e carenza per zona
Questa pagina spiega, in termini semplici, le formule dietro ai numeri che vedi nelle schede di città e categoria di Locifra. È il modello v0 attualmente in produzione — più semplice del modello v1 in sviluppo (correzione per reddito e turismo, geografia gravitazionale di Huff, calibrazione statistica sui bilanci reali), che pubblicheremo quando sarà pronto.
1. Potenziale di spesa della zona — E
E = N · s
N = residenti della zona (fonte: censimenti/anagrafi comunali o
equivalenti). s = spesa media annua per residente nella zona (stima orientativa, non ancora corretta
per reddito). E è il totale che gli abitanti della zona spendono ogni anno in tutte le categorie di
consumo locale.
2. Domanda di una categoria — D
D = E · φ
φ = quota della categoria sul totale dei consumi (struttura
orientativa di tipo ISTAT/HBS, per categoria: bar 2,0%, farmacie 3,1%, ristoranti 4,8%, ecc.). D è
quindi la fetta di E che una categoria specifica potrebbe intercettare, se non esistesse
concorrenza.
3. Residenti per attività — σ
σ = N / n
n = numero di attività della categoria entro il raggio equivalente
della zona: r = √(superficie ÷ π), con un minimo di 0,9 km e un massimo di 6 km dal centro
zona (non i confini amministrativi reali). Fino al 14.09 il raggio era fisso a 900 m per ogni
zona: sottostimava sistematicamente i quartieri grandi o poco densi (una zona da 20 km² ha lo
stesso raggio di ricerca di una da 0,3 km², e finiva quasi sempre a n = 0). Il raggio equivalente
risolve questo problema mantenendo lo stesso principio — un cerchio attorno al centro zona — ma
proporzionato alla sua area reale. σ dice quante persone "si
dividono" ciascuna attività esistente. Se una zona ha almeno 20.000 residenti e n resta 0 anche
con questo raggio più ampio, non calcoliamo comunque un indice di carenza per quella zona/categoria
(vedi il punto 5): mostriamo “—”, perché uno zero così esteso è quasi sempre una lacuna di
copertura OpenStreetMap piuttosto che un'assenza reale di domanda.
4. Soglia di mercato e coefficiente ρ
Per ogni categoria esiste una soglia di mercato (residenti per attività considerati "normali"): quando la città ha almeno 3 zone con dati sufficienti, la soglia è la mediana di σ calcolata su tutte le zone; altrimenti usiamo una costante di settore (es. ~350 abitanti/bar, ~600 abitanti/ristorante, valori di mercato orientativi). ρ = σ / soglia confronta la zona con questa soglia: ρ > 1 significa meno attività del normale rispetto alla soglia.
5. Indice di carenza — δ
Se n > 0: δ = min(100, 50 · ρ). Se n = 0 (nessuna attività della categoria nel raggio): δ = min(65, 35 · N/soglia) — un tetto più basso, perché "zero attività" può voler dire anche "zero domanda", non solo "spazio libero". L'indice è accompagnato da un livello di affidabilità (alta/media/bassa) basato sulla numerosità del campione (n della zona e n cittadino). Eccezione (regola di buon senso, dal 15.09): se la zona ha almeno 20.000 residenti e n = 0 anche col raggio equivalente del punto 3, l'indice non viene calcolato affatto — mostriamo “—” invece di un numero, con una nota, per non travestire da "grande opportunità" quella che nella maggior parte dei casi è una lacuna della mappatura OpenStreetMap in quella zona, non un vuoto di mercato reale.
6. Fatturato mediano
Calcolato solo sulle attività con un bilancio reale abbinato da un registro ufficiale (Registro Imprese, INPI/SIRENE, Äriregister, ANAF/Ministerul Finanțelor, Uzņēmumu reģistrs, a seconda del paese). Le catene con più di 3 sedi nella stessa città sono escluse dal calcolo per singolo punto, perché il loro fatturato è aziendale, non del singolo locale. Se il campione ha meno di 5 imprese, mostriamo “campione insufficiente” invece di un numero: non sostituiamo mai un dato mancante con una media generica. Due casi particolari: in Spagna, Germania, Austria e Canada il fatturato per singola impresa non è pubblicato a livello ufficiale in nessuna forma, quindi quelle pagine non hanno affatto una colonna di fatturato (mostrare sempre "campione insufficiente" sarebbe stato peggio di non mostrare nulla); in Francia, Romania, Estonia e Norvegia la colonna resta ma viene omessa pagina per pagina quando nessuna zona raggiunge n ≥ 5, invece di pubblicare una colonna interamente "insufficiente".
Limiti onesti (v0)
- Un solo valore di spesa media per zona: non corretto per il reddito reale della zona (un modello v1 con dati di reddito locale è in sviluppo).
- Raggio equivalente all'area della zona (r = √(superficie ÷ π), tra 0,9 e 6 km dal centro, dal 15.09 — prima era un raggio fisso di 900 m per ogni zona): zone vicine e dense possono comunque mostrare conteggi che si sovrappongono; non sono i confini amministrativi reali.
- Nessuna correzione per non residenti: pendolari e turisti possono spiegare gran parte del fatturato di bar/ristoranti in centro città, ma il modello attuale conta solo i residenti.
- Nessuna calibrazione statistica pubblicata finora: l'indice di carenza è un indicatore relativo, non un fatturato previsto con un intervallo di confidenza.
- Ambito: commercio al dettaglio e servizi locali di prossimità (B2C). Non è pensato per B2B, e-commerce o formati "destination" con bacino nazionale.
- Zone molto popolose (≥ 20.000 residenti) con zero attività rilevate anche nel raggio equivalente non ricevono un indice di carenza calcolato: mostriamo “—”, perché un simile zero è più spesso un buco di copertura OpenStreetMap che un'assenza reale di domanda.
Fonti aperte usate: OpenStreetMap (posizioni, © OpenStreetMap contributors, licenza ODbL), registri societari nazionali (Registro Imprese, INPI/SIRENE, Äriregister, ANAF/Ministerul Finanțelor, Uzņēmumu reģistrs), Eurostat (crescita settoriale nazionale di riferimento quando manca un dato locale).