Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Merging based on years

    Dear Statalist Users,

    I am tring to merge two datasets based on a "year" condition. In my master dataset, I observe country Angola only in two years: 2008 and 2012. In my using dataset, I am observing it from 1995 to 2016. I would like to make a merge such that: If I observe Angola in 2008, then I want x1 in 2003 (yr-5 which is 0.2382) and x1 in 2005 as well (yr-3 which is 0.3032). I want x2 in the same format. Basically, I want to merge t-5 and t-3 values of x1 only. Thank you very much for your help and consideration.

    "Master" dataset is as follows:

    Code:
    * Example generated by -dataex-. To install: ssc install dataex
    clear
    input str8 ctr_n int yr
    "Angola"   2008
    "Angola"   2012
    "Benin"    2001
    "Benin"    2006
    "Benin"    2010
    "Benin"    2015
    "Cameroon" 2000
    "Cameroon" 2005
    end

    "Using" file is as follows:



    Code:
    * Example generated by -dataex-. To install: ssc install dataex
    clear
    input str8 ctr_n int yr double(x1 x2)
    "Angola"   1995              .01    6
    "Angola"   1996              .01    2
    "Angola"   1997              .03    8
    "Angola"   1998              .03    4
    "Angola"   1999              .09    2
    "Angola"   2000              .18    7
    "Angola"   2001              .18    7
    "Angola"   2002 .205714285714286    4
    "Angola"   2003 .238214285714286   24
    "Angola"   2004 .270714285714286    4
    "Angola"   2005 .303214285714286    2
    "Angola"   2006 .335714285714286    5
    "Angola"   2007 .368214285714286    7
    "Angola"   2008 .400714285714286    6
    "Angola"   2009 .433214285714286    4
    "Angola"   2010 .465714285714286    3
    "Angola"   2011 .498214285714286    3
    "Angola"   2012 .660714285714286    3
    "Angola"   2013 .660714285714286    3
    "Angola"   2014 .660714285714286    5
    "Angola"   2015 .660714285714286    5
    "Angola"   2016 .660714285714286    5
    "Benin"    1995  .75640873015873    4
    "Benin"    1996 .794325396825397    5
    "Benin"    1997 .832242063492063    7
    "Benin"    1998  .87015873015873    3
    "Benin"    1999 .908075396825397    2
    "Benin"    2000 .945992063492064    2
    "Benin"    2001  .98390873015873    4
    "Benin"    2002  1.0218253968254    5
    "Benin"    2003 1.05974206349206    6
    "Benin"    2004 1.09765873015873    6
    "Benin"    2005  1.1355753968254    6
    "Benin"    2006 1.17349206349206    3
    "Benin"    2007 1.21140873015873    3
    "Benin"    2008  1.2493253968254    6
    "Benin"    2009 1.28724206349206    7
    "Benin"    2010 1.32515873015873    4
    "Benin"    2011  1.3630753968254    3
    "Benin"    2012 1.40099206349206    3
    "Benin"    2013 1.43890873015873    2
    "Benin"    2014  1.4768253968254    4
    "Benin"    2015 1.51474206349206    5
    "Benin"    2016 1.55265873015873  5.5
    "Cameroon" 1995 1.59057539682536  6.3
    "Cameroon" 1996 1.62849206349202  7.1
    "Cameroon" 1997 1.66640873015868  7.9
    "Cameroon" 1998 1.70432539682534  8.7
    "Cameroon" 1999   1.742242063492  9.5
    "Cameroon" 2000 1.78015873015866 10.3
    "Cameroon" 2001 1.81807539682532 11.1
    "Cameroon" 2002 1.85599206349198 11.9
    "Cameroon" 2003 1.89390873015864 12.7
    "Cameroon" 2004  1.9318253968253 13.5
    "Cameroon" 2005 1.96974206349196 14.3
    "Cameroon" 2006 2.00765873015862 15.1
    "Cameroon" 2007 2.04557539682528 15.9
    "Cameroon" 2008 2.08349206349194 16.7
    "Cameroon" 2009  2.1214087301586 17.5
    "Cameroon" 2010 2.15932539682526 18.3
    "Cameroon" 2011 2.19724206349192 19.1
    "Cameroon" 2012 2.23515873015858 19.9
    "Cameroon" 2013 2.27307539682524 20.7
    "Cameroon" 2014  2.3109920634919 21.5
    "Cameroon" 2015 2.34890873015856 22.3
    "Cameroon" 2016 2.38682539682522 23.1
    "Cameroon" 1995 2.42474206349188 23.9
    "Cameroon" 1996 2.46265873015854 24.7
    "Cameroon" 1997  2.5005753968252 25.5
    "Cameroon" 1998 2.53849206349186 26.3
    "Cameroon" 1999 2.57640873015853 27.1
    "Cameroon" 2000 2.61432539682519 27.9
    "Cameroon" 2001 2.65224206349185 28.7
    "Cameroon" 2002 2.69015873015851 29.5
    "Cameroon" 2003 2.72807539682517 30.3
    "Cameroon" 2004 2.76599206349183 31.1
    "Cameroon" 2005 2.80390873015849 31.9
    "Cameroon" 2006 2.84182539682515 32.7
    "Cameroon" 2007 2.87974206349181 33.5
    "Cameroon" 2008 2.91765873015847 34.3
    "Cameroon" 2009 2.95557539682513 35.1
    "Cameroon" 2010 2.99349206349179 35.9
    "Cameroon" 2011 3.03140873015845 36.7
    "Cameroon" 2012 3.06932539682511 37.5
    "Cameroon" 2013 3.10724206349177 38.3
    "Cameroon" 2014 3.14515873015843 39.1
    "Cameroon" 2015 3.18307539682509 39.9
    "Cameroon" 2016 3.22099206349175 40.7
    end

  • #2
    This should be straightforward, I think. Not tested:

    Code:
    merge 1:1 ctr_n yr using usingfile, keep(master match) nogen
    where you replace "usingfile" with the name of your using file.

    Comment

    Working...
    X