2015-08-05 17 views
5

In un set di dati di rilevamento ho una variabile stringa (tipo: str244) con risposte qualitative. Voglio contare il numero di caratteri in ogni risposta/stringa e generare una nuova variabile contenente questo numero.Genera variabile contenente il numero di caratteri in una variabile stringa

Utilizzo di egenmore Ho già contato il numero di parole utilizzando nwords, ma non riesco a trovare la controparte per il conteggio dei caratteri.

ESEMPIO:

egen countvar = nwords(stringvar) 

dove countvar è il nuovo nome della variabile e stringvar è la variabile stringa.

Esiste una tale funzione egen per il conteggio dei caratteri?

+0

La funzione 'wordcount()' in Stata rende il componente aggiuntivo precedente 'nwords()' ridondante. Nota 'egenmore' viene scaricato usando' ssc inst egenmore'. –

+0

L'aiuto per 'egenmore' fa riferimento a' wordcount() '. N.B. 'nwords()' (scritto per Stata 6) è molto lento. –

+0

Grazie per aver menzionato questo. 'gen countvar = wordcount (stringvar)' funziona come un incantesimo. Non sapevo che 'wordcount' era usato con' gen', non 'egen'. Perfezionare! – harre

risposta

6

Non c'è la funzione egen perché è stata a lungo [sic] stata una funzione rigorosa per farlo. Nelle versioni recenti di Stata, la funzione è chiamata strlen() ma il vecchio nome length() continua a lavorare:

. sysuse auto 
(1978 Automobile Data) 

. gen l1 = length(make) 

. gen l2 = strlen(make) 

. su l? 

    Variable |  Obs  Mean Std. Dev.  Min  Max 
-------------+--------------------------------------------------------- 
      l1 |   74 11.77027 2.155257   6   17 
      l2 |   74 11.77027 2.155257   6   17 

Vedi help functions e (e.g.) this tutorial column.

Problemi correlati