Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down at the end of May, and its replacement, statalist.org is already up and running.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: st: RE: RE: replace blank string values


From   richard boylan <richardtb25@gmail.com>
To   statalist@hsphsun2.harvard.edu
Subject   Re: st: RE: RE: replace blank string values
Date   Wed, 30 Jun 2010 14:10:35 -0500

Sorting by name is the trick, thank you.

sort id name
by id: replace name = name[_N]


On Wed, Jun 30, 2010 at 1:29 PM, Martin Weiss <martin.weiss1@gmx.de> wrote:
>
> <>
>
> Throw in a -sort- after -expand- to make this work:
>
>
> ***********
> ...
> expand 3
> sort id
> inp str10 name
> ...
> ***********
>
>
> HTH
> Martin
>
>
> -----Original Message-----
> From: owner-statalist@hsphsun2.harvard.edu
> [mailto:owner-statalist@hsphsun2.harvard.edu] On Behalf Of Martin Weiss
> Sent: Mittwoch, 30. Juni 2010 20:26
> To: statalist@hsphsun2.harvard.edu
> Subject: st: RE: replace blank string values
>
>
> <>
>
>
> -sort-ing allocates the name to the end, so you can pick it up there...
>
> ***********
> clear*
> set obs 5
> gen byte id=_n
> expand 3
>
> inp str10 name
> ""
> Nick
> ""
> Kit
> ""
> ""
> ""
> Ben
> ""
> Maarten
> ""
> ""
> ""
> ""
> Martin
>
> l, sepby(id)
> bys id (name): replace name=name[_N]
> l, sepby(id)
> ***********
>
>
> HTH
> Martin
>
>
> -----Original Message-----
> From: owner-statalist@hsphsun2.harvard.edu
> [mailto:owner-statalist@hsphsun2.harvard.edu] On Behalf Of richard boylan
> Sent: Mittwoch, 30. Juni 2010 20:18
> To: statalist@hsphsun2.harvard.edu
> Subject: st: replace blank string values
>
> I have a dataset which is a panel: id, year where id is the numeric
> value the individual.
>
> I also have the name of the individual, however, for some
> observations, the name is missing.
>
> How do I go about replacing the missing values for name?
>
> One way that works is
> sort id year
> by id: replace name = name[_n + 1] if name == "" & name[_n + 1] ~= ""
> by id: replace name = name[_n + 1] if name == "" & name[_n + 1] ~= ""
> ...
> by id: replace name = name[_n + 1] if name == "" & name[_n + 1] ~= ""
>
> However, is there a more efficient way of doing this, say using egen?
>
> Richard
> *
> *   For searches and help try:
> *   http://www.stata.com/help.cgi?search
> *   http://www.stata.com/support/statalist/faq
> *   http://www.ats.ucla.edu/stat/stata/
>
> *
> *   For searches and help try:
> *   http://www.stata.com/help.cgi?search
> *   http://www.stata.com/support/statalist/faq
> *   http://www.ats.ucla.edu/stat/stata/
>
> *
> *   For searches and help try:
> *   http://www.stata.com/help.cgi?search
> *   http://www.stata.com/support/statalist/faq
> *   http://www.ats.ucla.edu/stat/stata/
>

*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   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   |   Site index