Statalist


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

AW: st: round () if


From   "Martin Weiss" <martin.weiss1@gmx.de>
To   <statalist@hsphsun2.harvard.edu>
Subject   AW: st: round () if
Date   Fri, 6 Feb 2009 17:02:52 +0100

<> 

Good solution, and in one line. Careful with 1 and 2, though. Does Ali
really want them to become zero?

*************
clear*
set obs 30
gen weeks=_n
gen newweek=cond(abs(round(week,12)-week)<=2,round(week,12),week)
list
*************



HTH
Martin


-----Ursprüngliche Nachricht-----
Von: owner-statalist@hsphsun2.harvard.edu
[mailto:owner-statalist@hsphsun2.harvard.edu] Im Auftrag von Jeph Herrin
Gesendet: Freitag, 6. Februar 2009 16:56
An: statalist@hsphsun2.harvard.edu
Betreff: Re: st: round () if


Assuming your week is integers

  gen newweek=cond(abs(round(week,12)-week)<=2,round(week,12),week)

should do.

hth,
Jeph


Shehzad Ali wrote:
> Hi listers,
> 
> I want to round a variable 'week' if it is within 2 weeks range of 
> multiples of 12 week. So 10 weeks should become 12 weeks while 9 weeks 
> should not change. Similarly 21 weeks would not change while 25 weeks 
> will change to 24 weeks. Is there a way to do it in Stata using -round- 
> or other command?
> 
> Thank you,
> Shehzad
> *
> *   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   |   What's new   |   Site index