# RE: RE: st: Problem with "If" statement

 From "Nick Cox" To Subject RE: RE: st: Problem with "If" statement Date Thu, 8 Jun 2006 14:08:55 +0100

```You need to

replace boyno = . if b != 1

Beyond that, you've lost me. Sorry,

Nick
n.j.cox@durham.ac.uk

Deepankar Basu

> Nick,
>
> Following your suggestion, I have -reshape- the data. This is how it
> looks now:
>
> id  chilno  dfsize  nboy alive b  boyno  cno
> 1     1       4       2    4   1    1     1
> 1     2       4       2    4   2    1     2
> 1     3       4       2    4   1    2     3
> 1     4       4       2    4   2    2     4
> 1     5       4       2    4   .    2     4
> 1     6       4       2    4   .    2     4
> 1     7       4       2    4   .    2     4
> 2     1       4       2    3   1    1     1
> 2     2       4       2    3   .    1     1
> 2     3       4       2    3   2    1     2
> 2     4       4       2    3   .    1     2
> 2     5       4       2    3   1    2     3
> 2     6       4       2    3   .    2     3
> 2     7       4       2    3   .    2     3
>
>
> dfsize: desired family size
> nboy  : number of boys alive in the family
> alive : noumber of children alive
> b     : 1(boy), 2(girl), .(dead or not born)
> boyno : first boy or second boy, etc.
> cno   : first child or second child, etc. (only alive children)
>
>
> 1. I want to first generate the following variables:
>
> local i 1
> while `i' <= 7 {  \\There are a maximum of 7 children in any family
>
>  local j 1
>  while `j'<= `j' {
>    gen p`i'`j'=0
>    local j= `j' + 1
>  }
> local i = `i' + 1
> }
>
>
> local k = `nboy'
> local i 1
> forvalues i=1(1)`k' {
>   replace p`dfsize'`k' = (0.5)^`alive'
> }
>
> I can do this step.
>
> 2. Now I want to replace the value of p`dfsize'`k' with 0 whenever the
> kth (k runs from 1 to `nboy') boy is not the Nth child. For instance,
> for the family with id==1, I would want: p41=0, p42=0,
> p43=(0.5)^4. For
> the second family (id==2), I would want: p51=0, p52=(0.5)^3, p53=0,
> p54=0. (Note that I want the p* variables to have a single value for
> each family.)
>
> This is where I am stuck.
>
> 2. Later, I want to get back to the -wide- format because I
> want to use
> the p* variables for my ML estimation.
>
> Any suggestions will be appreciated.
>

*
*   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/
```