Statalist


[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

Re: st: How to attach a string to a numeric variable as its value lable


From   "Jia Xiangping" <jiajoseph@googlemail.com>
To   statalist@hsphsun2.harvard.edu
Subject   Re: st: How to attach a string to a numeric variable as its value lable
Date   Tue, 25 Mar 2008 19:15:48 -0400

Thanks Friedrich. As you said, the new numeric variable has the values
1, 2, 3, and so on, but alphabetically with x. -replace- is a wrong
way; the numeric is the same, but the labels are changed.  Does stata
have a simple way for such a function?

Thanks for the caution, Margaret. All the variables have no some
extraneous blanks.



encode x, gen(new)
list new y x, nolabel sep(0)
replace new=y
list new y x, sep(0)

new         y                    x       new[replaced]  y              x
1	27	BUGIRI	SOROTI	27	BUGIRI
1	27	BUGIRI	SOROTI	27	BUGIRI
4	28	IGANGA	TORORO	28	IGANGA
4	28	IGANGA	TORORO	28	IGANGA
4	28	IGANGA	TORORO	28	IGANGA
16	29	MAYUGE	WAKISO	29	MAYUGE
16	29	MAYUGE	WAKISO	29	MAYUGE
16	29	MAYUGE	WAKISO	29	MAYUGE
16	29	MAYUGE	WAKISO	29	MAYUGE
16	29	MAYUGE	WAKISO	29	MAYUGE
16	29	MAYUGE	WAKISO	29	MAYUGE
5	30	JINJA	30	30	JINJA
5	30	JINJA	30	30	JINJA
5	30	JINJA	30	30	JINJA
8	31	KAMULI	31	31	KAMULI
8	31	KAMULI	31	31	KAMULI
8	31	KAMULI	31	31	KAMULI
8	31	KAMULI	31	31	KAMULI
23	32	PALLISA	32	32	PALLISA
29	33	WAKISO	33	33	WAKISO
29	33	WAKISO	33	33	WAKISO
19	34	MPIGI	34	34	MPIGI
19	34	MPIGI	34	34	MPIGI
21	35	MUKONO	35	35	MUKONO
21	35	MUKONO	35	35	MUKONO
21	35	MUKONO	35	35	MUKONO
11	36	KAYUNGA	36	36	KAYUNGA
2	37	BUSHENYI	37	37	BUSHENYI
25	38	RUKUNGIRI	38	38	RUKUNGIRI
9	39	KAPCHORWA	39	39	KAPCHORWA
9	39	KAPCHORWA	39	39	KAPCHORWA
9	39	KAPCHORWA	39	39	KAPCHORWA
27	40	SOROTI	40	40	SOROTI
13	40	KUMI	40	40	KUMI




On 3/25/08, Friedrich Huebler <fhuebler@gmail.com> wrote:
> Xiangping Jia,
>
> When you -encode- a string variable, the new numeric variable has the
> values 1, 2, 3, and so on. These values are probably not the same as
> those in the variable y. In the example in your message, the label
> "RAKAI" is assigned to the value 1 and not the value 21 when you
> -replace newx=y-.
>
> Below is an inefficient solution that creates correct value labels.
> The solution is inefficient because it loops over all observations.
>
> . count
> . local n = r(N)
> . forvalues i = 1/`n' {
>  local xi = x[`i']
>  local yi = y[`i']
>  lab def ylab `yi' "`xi'", modify
>  }
> . lab val y ylab
> . lab list ylab
> ylab:
>          21 RAKAI
>          22 MASAKA
>          23 MBALE
>          24 SIRONKO
>          25 TORORO
>          26 BUSIA
>
> Friedrich
>
> On Tue, Mar 25, 2008 at 4:32 PM, Jia Xiangping <jiajoseph@googlemail.com> wrote:
> > Dear all,
> >
> >  There are two variables, one string and one numeric. The meaning of x
> >  is supposed to be attached to y as its value label.
> >
> >  x                 y
> >  RAKAI         21
> >  RAKAI         21
> >  RAKAI         21
> >  MASAKA     22
> >  MASAKA     22
> >  MASAKA     22
> >  MASAKA     22
> >  MBALE         23
> >  MBALE         23
> >  MBALE         23
> >  SIRONKO      24
> >  SIRONKO      24
> >  TORORO       25
> >  TORORO       25
> >  BUSIA           26
> >
> >
> >  The simple way I did was:
> >  . encode x, gen(newx)
> >  . replace newx=y
> >  . list newx y
> >
> >  Then it is found some are not replaced. I must read a solution
> >  somewhere, but I can not recall it. Could someone give a quick
> >  solution? Thanks.
> >
> >                   newx              x
> >   65. |      TORORO        IGANGA |
> >   66. |      WAKISO        MAYUGE |
> >   67. |      WAKISO        MAYUGE |
> >   68. |      WAKISO        MAYUGE |
> >   69. |      WAKISO        MAYUGE |
> >   70. |      WAKISO        MAYUGE |
> >   71. |      WAKISO        MAYUGE |
> >   72. |          30         JINJA |
> >   73. |          30         JINJA |
> >   74. |          30         JINJA |
> >   75. |          31        KAMULI |
> >   76. |          31        KAMULI |
> >
> >
> >  ps. Stata 10. Windows XP.
> >
> >
> >
> >  --
> >  Xiangping Jia
> *
> *   For searches and help try:
> *   http://www.stata.com/support/faqs/res/findit.html
> *   http://www.stata.com/support/statalist/faq
> *   http://www.ats.ucla.edu/stat/stata/
>


-- 
Xiangping Jia
*
*   For searches and help try:
*   http://www.stata.com/support/faqs/res/findit.html
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/



© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index