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

From |
pascalstock@freenet.de |

To |
statalist@hsphsun2.harvard.edu |

Subject |
RE: RE: st: RE: Programming a loop to exclude M&As in the 5 years prior to an M&A |

Date |
Thu, 16 Oct 2008 21:42:46 +0200 |

Dear Mr. Weiss and all helpful STATA Users, I figured ot how to get the target_cusip and acquiror_cusip in one column by doubling the observation of each deal, and then creating the following variable t_and_a_cusip that includes for the first [_n==1] observation per deal the target_cusip and for the second [_n==2] observation per deal the acquiror_cusip. Then I identified those t_and_a_cusips, of the targets' and acquiror's, that are duplicated with the "duplicates tag t_and_a_cusip" command. sort deal_number expand 2 generate t_and_a_cusip="" by deal_number: replace t_and_a_cusip=target_cusip if [_n==1] by deal_number: replace t_and_a_cusip=acquiror_cusip if [_n==2] sort t_and_a_cusip year_of_announcement duplicates tag t_and_a_cusip, generate(duplicated_cusip) Now I have to figure out how to specify the range that the duplication tag is assigned only when the difference between the last observation and the current observation is less than 5 years. Henc I sorted the data forst by the t_and_a_cusip, and then by the year_of_announcement. e.g. year_of_announcement t_and_a_cusip 1999 00001Q 2000 00001Q 2000 00001Q 2003 00001Q 2006 00001Q Here the consecutive annual differences are less than 5 years, so a duplication tag=1 is assigned. IHowever, if the differences would be greater than five years like year_of_announcement t_and_a_cusip duplication_tag 1992 00001Q 0 1999 00001Q 0 2000 00001Q 1 2006 00001Q 0 the obs with 2000 gets a tag as the previous M&A involving the company with the cusip 00001Q as a target or acquiror occured less then five years ago. This observation/deal I want to exclude to avoid within 5 years the problem of overlapping M&A deals. How to specifiy such a qualifier ? Kind regards Pascal Stock > -----Ursprüngliche Nachricht----- > Von: pascalstock@freenet.de > Gesendet: Do. 16.10.08 (20:19) > An: statalist@hsphsun2.harvard.edu > Betreff: RE: st: RE: Programming a loop to exclude M&As in the 5 years prior to an M&A > > Dear Mr. Weiss, > > thanks for your quick reply. I looked for a solution with an indiator > variable to signal that the target_cusips occur more than once within > the last five years. As STATA cannot compare the values of > target_cusip > within a column, but only within rows, I found out that the > "duplicate > tag target_cusip, generate(dupliucate_target)" command might be > usefull. > If more than one observation with the same target_cusip occurs, it is > assigned a number how often it occurs (1,2,3,...) in the generated > inficator variable "duplicate_target". This is a convenient solution. > My > problem is now that I want to look for duplicates only within the > last 5 > years, so I programmed the following loop: > > sort target_cusip year_of_announcement > local j=1992 > forvalues j=1992/2006 { > > duplicates tag target_cusip if `j-5'<=year_of_announcement | > `j-4'<=year_of_announcement | `j-3'<=year_of_announcement | > `j-2'<=year_of_announcement | `j-1'<=year_of_announcement, > generate(duplicated_target) > } > > Duplicates in terms of target_cusip > generate() must specify new variable > r(110); > > It works fine except that also duplicated observations are assigned > an > indicator if the consecutivly ordered year_of_announcement have a gap > of > more than 5 years as well, which I do not want. Also sometimes no > indicator (0=no duplication, 1,2,3 for multiple duplications) is > assigned with "." as I get the error message "generate() must > specify > new variable r(110);" even though the indicator variable did not > exist > before in the dataset. > > The next problem is to figure out how to search for duplicated cusips > between two different colums, the acquiror_cusip and the > target_cusip. > Is it possible to put the cusips in one column by duplicating the > observations to have two otherwise identical observations that differ > only in the cusip's stored in the same column, the pervious > acquiror_cusip and target_cusip? This way I could search for the > cusips > in just one column with the "duplicates tag cusip" command. > > Thanks for your help and kind regards > > Pascal > > > > -----Ursprüngliche Nachricht----- > > Von: "Martin Weiss" <martin.weiss1@gmx.de> > > Gesendet: Do. 16.10.08 (13:21) > > An: statalist@hsphsun2.harvard.edu > > Betreff: st: RE: Programming a loop to exclude M&As in the 5 years > prior to an M&A > > > > Not fully understanding your prob, let me comment on two aspects: > > Firstly, > > it is not clear to me why you include the first line and set -local > > j- equal > > to 1987. The next line tells Stata exactly which values -j- should > > acquire > > in the loop as in > > > > ********** > > loc i=1 > > forv i=3/5{ > > di `i' > > } > > ********* > > > > The first line is harmless, but also redundant. > > > > Secondly, it is not a good idea to -drop- observations left and > > right. > > Instead, create an indicator variable for your -if- qualifiers. > > Simply do > > something along these lines in your loop: > > > > ************ > > g indicator=0 > > replace indicator=1 if acquiror_cusip==acquiror_cusip & > > year_of_announcement==`j'-1 > > ************ > > > > Later you can condition your analyses on this indicator, but can go > > back to > > the original data if needed. > > > > > > BTW, the FAQ on such problems are quite comprehensive and helpful > > (http://www.stata.com/support/faqs/). Also check the contents of > the > > Stata > > Journal archive, part of which is free: > > http://www.stata-journal.com/archives.html > > > > > > HTH > > Martin > > > > -----Original Message----- > > From: owner-statalist@hsphsun2.harvard.edu > > [mailto:owner-statalist@hsphsun2.harvard.edu] On Behalf Of > > pstock@rumms.uni-mannheim.de > > Sent: Thursday, October 16, 2008 12:03 PM > > To: statalist@hsphsun2.harvard.edu > > Subject: st: Programming a loop to exclude M&As in the 5 years > prior > > to an > > M&A > > > > Hello Statausers, > > > > I am new to STATA and try to program a screening loop to exclude > from > > my SDC M&A sample those M&As in which the acquiror or target of an > > M&A > > in a particular year_of_announcement==`j' with j=1987-2006 has been > > the target or acquiror in an M&A in one of the preceeding 5 years. > > This screening is needed to avoid the problem of overlapping events > > in > > the analysis of the stock returns after the M&A. > > > > My problem is how to program that STATA is supposed to look in a > > particular year for all acquirors and targets that are acquirors or > > targets in one of the past 5 years. The target_cusip and > > acquiror_cusip as identifiers are organized in seperate colums. So > > STATA has to go through these two colums in each year and look for > > duplicated cusips that occur already in the year_of_announcement > > looked at. > > > > So far I programmed the following loop, but do not know how to > > indicate that the year_of_announcement==`j' is the base year from > > which Stata has to go back year by year to look for the cusips > > occuring in year j that are duplicated in the previous years : > > > > local j=1987 > > forvalues j=1987/2006 { > > > > drop if acquiror_cusip==acquiror_cusip & > year_of_announcement==`j'-1 > > drop if acquiror_cusip==target_cusip & year_of_announcement==`j'-1 > > drop if target_cusip==target_cusip & year_of_announcement==`j'-1 > > drop if target_cusip==acquiror_cusip & year_of_announcement==`j'-1 > > > > drop if acquiror_cusip==acquiror_cusip & > year_of_announcement==`j'-2 > > drop if acquiror_cusip==target_cusip & year_of_announcement==`j'-2 > > drop if target_cusip==target_cusip & year_of_announcement==`j'-2 > > drop if target_cusip==acquiror_cusip & year_of_announcement==`j'-2 > > > > drop if acquiror_cusip==acquiror_cusip & > year_of_announcement==`j'-3 > > drop if acquiror_cusip==target_cusip & year_of_announcement==`j'-3 > > drop if target_cusip==target_cusip & year_of_announcement==`j'-3 > > drop if target_cusip==acquiror_cusip & year_of_announcement==`j'-3 > > > > drop if acquiror_cusip==acquiror_cusip & > year_of_announcement==`j'-4 > > drop if acquiror_cusip==target_cusip & year_of_announcement==`j'-4 > > drop if target_cusip==target_cusip & year_of_announcement==`j'-4 > > drop if target_cusip==acquiror_cusip & year_of_announcement==`j'-4 > > > > drop if acquiror_cusip==acquiror_cusip & > year_of_announcement==`j'-5 > > drop if acquiror_cusip==target_cusip & year_of_announcement==`j'-5 > > drop if target_cusip==target_cusip & year_of_announcement==`j'-5 > > drop if target_cusip==acquiror_cusip & year_of_announcement==`j'-5 > > } > > > > I gues a command with a varlist like forvalues j=1987/2006 of > varlist > > year_of_announcement {.....} > > > > Kind regards > > > > Pascal Stock > > > > * > > * 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/ > > > > > > > > -----Ursprüngliche Nachricht Ende----- > > > > > > > > > #adBox3 {display:none;} > > > > > > > * > * 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/ > > > > -----Ursprüngliche Nachricht Ende----- Gratis: Jeden Monat 3 SMS versenden- Mit freenetMail - Ihrer kostenlose E-Mail-Adresse http://email.freenet.de/dienste/emailoffice/produktuebersicht/basic/sms/index.html?pid=6830 * * 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/

**Follow-Ups**:**Re: RE: st: RE: Programming a loop to exclude M&As in the 5 years prior to an M&A***From:*"Martin Weiss" <martin.weiss1@gmx.de>

- Prev by Date:
**RE: Re: st: Programming a loop to exclude M&As in the 5 years prior to an M&A** - Next by Date:
**Re: RE: st: RE: Programming a loop to exclude M&As in the 5 years prior to an M&A** - Previous by thread:
**RE: Re: st: Programming a loop to exclude M&As in the 5 years prior to an M&A** - Next by thread:
**Re: RE: st: RE: Programming a loop to exclude M&As in the 5 years prior to an M&A** - Index(es):

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