Interpretazione dei numeri decimali: come cercare di salvarsi dalle impostazioni del sistema operativo!

Autore: Carlo Meneghini

Esistono principalmente due simboli per indicare la parte decimale di un numero: il punto o la virgola. Inoltre, al fine di rendere più leggibili numeri anche grandi, le cifre possono essere riunite in gruppi di tre cifre utilizzando un "separatore delle migliaia", il puntino in alto della scuola elementare!
Diversi paesi utilizzano convenzioni diverse e così le impostazioni di programmi e sistemi operativi posso risultare diverse (vedi, ad esempio, Wikipedia: separatore decimale (it) o meglio International System of Units (En)). Ad esempio in Italia, Francia e molti paesi di lingua neolatina, la virgola è usata come separatore della parte frazionaria di un numero. Tra questi alcuni paesi (Francia, ad esempio) usano uno spazio per separare le migliaia nella parte intera, altri (Italia) usano il punto. Insomma la notazione non è univoca. Anche il Sistema internazionale di unità di misura (SI) non da un'indicazione univoca ma stabilisce che il separatore dei decimali dovrebbe essere quello consueto nel contesto in questione [International Bureau of Weights and Measures (2006), The International System of Units (SI) (8th ed.), ISBN 92-822-2213-6]. Il risultato è che le impostazioni software e sistemi operativi Italiani usano il punto come separatore delle migliaia e la virgola come separatore dei decimali. Impostazioni dei programmi e di sistemi operativi anglosassoni usano lo spazio (o nulla) come separatore delle migliaia, mentre indicano la parte decimale con un punto. Inoltre alcuni programmi non consentono di cambiare le impostazioni, il che può generare confusione ulteriore.
Con questa ampia scelta di opzioni è possibile, e spesso accade, che il dato che vogliamo leggere non abbia il formato che il programma si aspetta. Vediamo quindi come cercare di cavarcela senza dover cambiare a mano i dati, cosa che potrebbe comportare inutili perdite di tempo nel caso di lunghe serie di dati.
Esistono diverse possibilità, più o meno complesse, ma la prima cosa da fare è controllare le impostazioni del proprio sistema operativo (SO). Si può fare in modo semplice digitando un numero decimale in un qualunque editor di testo o wordprocessor utilizzando il tastierino numerico: il tasto "punto" del tastierino numerico scrive un "." sullo schermo se il SO ha un'impostazione di tipo anglosassone, oppure scrive una "," se il sistema ha un'impostazione di tipo Italiana. Un altro modo è digitare un numero decimale in una casella Excel (Office) o Calc (OpenOffice) usando sia la virgola che il punto. Se il numero viene effettivamente letto come numero decimale si vedrà allineato a destra nella cella, altrimenti si troverà allineato a sinistra o, addirittura, modificato.
Da notare che Excel (ma non solo) interpreta i valori forniti a seconda del separatore usato ma può alterare il contenuto delle colonne per adattare il formato dato al significato che ritiene corretto. Se questo acceda il programma modifica il formato della cella, e i valori successivi verranno “interpretati” in modo errato. In questo caso è necessario rimuovere la cella o cambiare il formato.
Una volta stabilito come il nostro PC legge un numero decimale, bisogna fornire i dati nel formato corretto. Purtroppo può capitare di avere dati nel formato sbagliato: ad esempio dati che usano il punto come separatore dei decimali (123.41) mentre il nostro SO vuole una virgola (123,42). Ora alcuni programmi cercano di interpretare il "formato" dando risultati strampalati (es. provate a scrivere 1.4 o 1,4 su un foglio Excel per vedere che succede). Vediamo quindi alcuni modi che ci permettono di importare i dati nel formato adeguato senza dovere modificare i valori uno per uno.
Vediamo quindi alcuni modi che ci permettono di importare i dati nel formato adeguato.


Modifica dei dati in un file ASCII (testo)

Il modo più immediato consiste nel copiare i dati in un file di di testo (ASCII, estensione .txt) e quindi usare le opzioni del programma (blocco note, Notepad++,...) per sostituire i simboli originali con quelli giusti. Per fare questo si può procedere come segue:
i. si usa un editor di file testo (notepad, blocco note, notepad++, etc...) per copiare i dati in un file di tipo testo (ad esempio un file con estensione \emph{.txt}). Generalmente è preferibile usare un editor di testo piuttosto di un wordprocessor per evitare che vengano inseriti caratteri di controllo che potrebbero dar fastidio al processo di lettura. ii. Si usano le opzioni del programma (di solo nel menu Modifica -> sostituisci) per sostituire il simbolo originale con quello appropriato. iii. In fine si salva il file con un nuovo nome e si può quindi importare in un programma di analisi. Oppure i dati modificati si possono copiare e incollare in un foglio di calcolo.


Modifica Impostazioni di Sistema

Se si ha spesso a che fare con dati il cui formato non corrisponde a quello impostato nel sistema operativo, oppure se si usano programmi che non consentono di modificare il formato dei decimali, potrebbe essere preferibile modificare le impostazioni del sistema operativo in modo da non doverci più pensare (si può sempre tornare indietro). Per questo si procede cosi:
i. dal Pannello di Controllo (Control Panel) si sceglie il programma: "opzioni internazionali e della lingua" e, nella finestra "opzioni internazionali" (in W7: paese e lingua-> impostazioni aggiuntive) si sceglie il tasto "personalizza".
ii. Qui si possono scegliere i simboli voluti per il separatore dei decimali e per il raggruppamento delle migliaia. Ovviamente fate attenzione a non usare lo stesso simbolo!


Modifica Opzioni Excel(Ms)/Calc(Oo)

Si possono modificare direttamente le opzioni in Excel(Ms)/Calc(Oo) per adadttarle al formato voluto:
i. in Excel(Ms) dal menu Strumenti(Tools)-Opzioni nella scheda Internazionale si può scegliere se utilizzare l'opzione di sistema oppure modificare il separatore dei decimali/migliaia.
ii. In Calc(Oo): dal menu strumenti - opzioni - impostazioni lingua - lingue si imposta la voce "schema locale" a inglese per avere il punto "." come separatore dei decimali o Italiano per avere la virgola ",".


Importare i dati in Excel(Ms)

Se avete un file di dati scritto nel formato "sbagliato" potete definire le impostazioni per leggere i decimali direttamente durante la lettura. As esempio se avete il fie "dati.txt" che contiene dati divisi per colonne, in Excel:
i. aprite il file dati.txt (menu file - apri) si aprono una serie di finestre che consentono di definire diverse opzioni di formato.
ii. L'ultima finestra (la terza) ha il pulsante "avanzate" dove potete definire il "formato" con cui leggere i dati per interpretare in modo corretto numeri decimali.


Copia e incolla in Excel(Ms)

Avete copiato un set di dati (es. da internet) con il tasto copia e lo incollate in una foglio Excel. Se i dati contengono più colonne queste saranno, generalemnte, raggruppate in una sola cella. A questo punto dovete separarli in colonne. Per far questo:
i. selezionate la colonna dei dati appena copiati.
ii. Dal menu dati selezionate "testo in colonne", cosi si aprono diverse schede per definire il "formato" con cui leggere i dati (separatore delle colonne, tipo di dati etc...). Nella terza scheda il tasto "avanzate" vi permette di definire il formato dei numeri decimali.


Proviamo!

Il file: dati_ITA.txt contiene due colonne di dati numerici nel formato Italiano, ovvero usando la virgola come separatore dei decimali. Proviamo a importarlo in Excel/Calc nel formato corretto.
Il file: dati_US.txt contiene due colonne di dati numerici in formato anglosassone, ovvero usando la virgola come separatore dei decimali. Proviamo a importarlo in Excel/Calc nel formato corretto.

C. Meneghini home