Converti tra variabili numeriche e caratteri¶

La conversione tra variabili numeriche e caratteri è uno dei problemi più frequenti durante l’elaborazione dei set di dati. Questo articolo spiega come eseguire questa conversione in modo corretto ed efficiente.

Da numerico a carattere¶

Si supponga che esista un set di dati importato denominato filings, dove cik è memorizzato come variabile numerica come mostrato di seguito:

cik file_type data
1000229 8-K 2011-09-30
100591 8-K 2006-05-11
100826 8-K 2009-06-30
93542 8-K 2007-01-25

Perché cik è di cifre diverse, per la conversione numerica cik in una variabile di tipo carattere, il procedimento naturale e ‘ quello di riempire con zeri iniziali. Per esempio, cik (Centrale, la Chiave di Indice) di per sé è un numero di 10 cifre utilizzato dal SEC.

In SAS, la conversione numerica variabile stringa con zeri iniziali (supponendo di 10 cifre di lunghezza fissa) viene eseguito tramite PUT() funzione:

123
data filings(drop=cik); set filings; cik_char = put(cik, z10.); run;

Suggerimento

PUT() funzione funziona anche in PROC SQL.

La variabile generata cik_char è di formato e informat . e il set di dati diventa:

cik_char file_type data
0001000229 8-K 2011-09-30
0000100591 8-K 2006-05-11
0000100826 8-K 2009-06-30
0000093542 8-K 2007-01-25

In STATA, la conversione numerica variabile stringa con zeri iniziali (supponendo di 6 cifre di lunghezza fissa) può essere raggiunto tramite l’ string() funzione.

1
gen char_var = string(num_var,"%06.0f")

Carattere Numerico¶

In SAS, la conversione di una variabile carattere numerico utilizza il INPUT() funzione:

1
var_numeric = input(var_char, best12.);

In STATA, questa conversione può essere fatto tramite o destring comando.

1
gen num_var = real(char_var);

La funzione real() funziona su una singola variabile. destring comando può convertire tutte le variabili di carattere in numerico in una volta sola.

1
destring, repalce

Warning

Se una variabile di caratteri contiene caratteri non numerici, non verrà convertita. In tal caso, è possibile scegliere di utilizzare il comando encode, anche se in realtà sta generando categorie.

Una spiegazione più dettagliata con esempi è disponibile all’indirizzo stats.idre.ucla.edu

Ultimo aggiornamento: 22 maggio 2020

You might also like

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.