Announcement

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

  • Analysis of trends

    Hello everyone,

    My question is how to perform an analysis of trends during a certain period of time to see if the percentages of a desired outcome goes up or down significantly. Simply put, I have an outcome (as a percentage) for each year (10 years in total). The percentages go up and down and it's not easy to just look at the line graph and make a conclusion whether it went up or down during the 10 year period. Can anyone please guide me on how to perform such analysis? Previously I used ptrend command and weighted least square regression but the problem with those is that both methods "weigh" the percentages while I just want to see if the raw percentages go up or down during my study period.

    Something like this:

    year outcome
    1991 .32
    1992 .23
    1993 .43
    1994 .69
    1995 .42
    1996 .56
    1997 .61
    1998 .65
    1999 .67
    2000 .54


    Thank you!
    Last edited by Reza Hosseini; 29 Jun 2016, 18:49.

  • #2
    Well, here's my try. Look at the first ("linear") component of the orthogonal polynomial contrasts shown with the contrast postestimation command below.

    You would likely have a more powerful test if you could use the individual binomial values or at least the counts each year, if such data are available.

    .ÿversionÿ14.1

    .ÿ
    .ÿclearÿ*

    .ÿsetÿmoreÿoff

    .ÿ
    .ÿinputÿintÿyearÿdoubleÿoutcome

    ÿÿÿÿÿÿÿÿÿyearÿÿÿÿÿoutcome
    ÿÿ1.ÿ1991ÿ.32
    ÿÿ2.ÿ1992ÿ.23
    ÿÿ3.ÿ1993ÿ.43
    ÿÿ4.ÿ1994ÿ.69
    ÿÿ5.ÿ1995ÿ.42
    ÿÿ6.ÿ1996ÿ.56
    ÿÿ7.ÿ1997ÿ.61
    ÿÿ8.ÿ1998ÿ.65
    ÿÿ9.ÿ1999ÿ.67
    ÿ10.ÿ2000ÿ.54
    ÿ11.ÿend

    .ÿ
    .ÿgenerateÿdoubleÿsdÿ=ÿsqrt(outcomeÿ*ÿ(1ÿ-ÿoutcome))

    .ÿ
    .ÿvwlsÿoutcomeÿi.year,ÿsd(sd)

    Variance-weightedÿleast-squaresÿregressionÿÿÿÿÿÿNumberÿofÿobsÿÿÿÿÿ=ÿÿÿÿÿÿÿÿÿ10
    Goodness-of-fitÿchi2(0)ÿÿÿÿ=ÿÿÿÿÿÿÿ.ÿÿÿÿÿÿÿÿÿÿÿÿModelÿchi2(9)ÿÿÿÿÿ=ÿÿÿÿÿÿÿ1.08
    Probÿ>ÿchi2ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ=ÿÿÿÿÿÿÿ.ÿÿÿÿÿÿÿÿÿÿÿÿProbÿ>ÿchi2ÿÿÿÿÿÿÿ=ÿÿÿÿÿ0.9992
    ------------------------------------------------------------------------------
    ÿÿÿÿÿoutcomeÿ|ÿÿÿÿÿÿCoef.ÿÿÿStd.ÿErr.ÿÿÿÿÿÿzÿÿÿÿP>|z|ÿÿÿÿÿ[95%ÿConf.ÿInterval]
    -------------+----------------------------------------------------------------
    ÿÿÿÿÿÿÿÿyearÿ|
    ÿÿÿÿÿÿÿ1992ÿÿ|ÿÿÿÿÿÿÿ-.09ÿÿÿ.6282515ÿÿÿÿ-0.14ÿÿÿ0.886ÿÿÿÿÿ-1.32135ÿÿÿÿÿ1.14135
    ÿÿÿÿÿÿÿ1993ÿÿ|ÿÿÿÿÿÿÿÿ.11ÿÿÿ.6802206ÿÿÿÿÿ0.16ÿÿÿ0.872ÿÿÿÿ-1.223208ÿÿÿÿ1.443208
    ÿÿÿÿÿÿÿ1994ÿÿ|ÿÿÿÿÿÿÿÿ.37ÿÿÿ.6568866ÿÿÿÿÿ0.56ÿÿÿ0.573ÿÿÿÿ-.9174741ÿÿÿÿ1.657474
    ÿÿÿÿÿÿÿ1995ÿÿ|ÿÿÿÿÿÿÿÿÿ.1ÿÿÿ.6791171ÿÿÿÿÿ0.15ÿÿÿ0.883ÿÿÿÿ-1.231045ÿÿÿÿ1.431045
    ÿÿÿÿÿÿÿ1996ÿÿ|ÿÿÿÿÿÿÿÿ.24ÿÿÿ.6811755ÿÿÿÿÿ0.35ÿÿÿ0.725ÿÿÿÿ-1.095079ÿÿÿÿ1.575079
    ÿÿÿÿÿÿÿ1997ÿÿ|ÿÿÿÿÿÿÿÿ.29ÿÿÿ.6749074ÿÿÿÿÿ0.43ÿÿÿ0.667ÿÿÿÿ-1.032794ÿÿÿÿ1.612794
    ÿÿÿÿÿÿÿ1998ÿÿ|ÿÿÿÿÿÿÿÿ.33ÿÿÿ.6671582ÿÿÿÿÿ0.49ÿÿÿ0.621ÿÿÿÿÿ-.977606ÿÿÿÿ1.637606
    ÿÿÿÿÿÿÿ1999ÿÿ|ÿÿÿÿÿÿÿÿ.35ÿÿÿ.6623443ÿÿÿÿÿ0.53ÿÿÿ0.597ÿÿÿÿÿ-.948171ÿÿÿÿ1.648171
    ÿÿÿÿÿÿÿ2000ÿÿ|ÿÿÿÿÿÿÿÿ.22ÿÿÿ.6826419ÿÿÿÿÿ0.32ÿÿÿ0.747ÿÿÿÿ-1.117954ÿÿÿÿ1.557954
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|
    ÿÿÿÿÿÿÿ_consÿ|ÿÿÿÿÿÿÿÿ.32ÿÿÿ.4664762ÿÿÿÿÿ0.69ÿÿÿ0.493ÿÿÿÿ-.5942765ÿÿÿÿ1.234276
    ------------------------------------------------------------------------------

    .ÿcontrastÿp.year,ÿpveffectsÿnowald

    Contrastsÿofÿmarginalÿlinearÿpredictions

    Marginsÿÿÿÿÿÿ:ÿasbalanced

    -----------------------------------------------------
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿContrastÿÿÿStd.ÿErr.ÿÿÿÿÿÿzÿÿÿÿP>|z|
    -------------+---------------------------------------
    ÿÿÿÿÿÿÿÿyearÿ|
    ÿÿÿ(linear)ÿÿ|ÿÿÿ.1054911ÿÿÿ.1493714ÿÿÿÿÿ0.71ÿÿÿ0.480
    (quadratic)ÿÿ|ÿÿ-.0533967ÿÿÿ.1526225ÿÿÿÿ-0.35ÿÿÿ0.726
    ÿÿÿÿ(cubic)ÿÿ|ÿÿ-.0130413ÿÿÿ.1520545ÿÿÿÿ-0.09ÿÿÿ0.932
    ÿÿ(quartic)ÿÿ|ÿÿÿ-.006741ÿÿÿ.1499558ÿÿÿÿ-0.04ÿÿÿ0.964
    ÿÿ(quintic)ÿÿ|ÿÿ-.0527641ÿÿÿ.1465866ÿÿÿÿ-0.36ÿÿÿ0.719
    ÿÿÿ(sextic)ÿÿ|ÿÿÿ.0423435ÿÿÿ.1493729ÿÿÿÿÿ0.28ÿÿÿ0.777
    ÿÿÿ(septic)ÿÿ|ÿÿ-.0078873ÿÿÿ.1520726ÿÿÿÿ-0.05ÿÿÿ0.959
    ÿÿÿÿ(octic)ÿÿ|ÿÿ-.0385536ÿÿÿ.1518268ÿÿÿÿ-0.25ÿÿÿ0.800
    ÿÿÿÿ(nonic)ÿÿ|ÿÿÿ.0409304ÿÿÿ.1545442ÿÿÿÿÿ0.26ÿÿÿ0.791
    -----------------------------------------------------

    .ÿ
    .ÿ//ÿConfirmationÿthatÿtheÿregressionÿmodelÿfitsÿtheÿ"rawÿpercentages"
    .ÿpredictÿdoubleÿxb,ÿxb

    .ÿgraphÿtwowayÿscatterÿoutcomeÿyear,ÿmcolor(black)ÿmsize(small)ÿ||ÿ///
    >ÿÿÿÿÿÿÿÿÿlineÿxbÿyear,ÿsortÿlcolor(black)ÿ///
    >ÿÿÿÿÿÿÿÿÿylabel(ÿ,ÿangle(horizontal)ÿnogrid)ÿlegend(off)

    .ÿ
    .ÿ//ÿNoÿweighting,ÿonlyÿrankÿtransformation
    .ÿnptrendÿoutcome,ÿby(year)

    ÿÿÿÿÿÿÿÿÿÿyearÿÿÿÿÿÿÿÿscoreÿÿÿÿÿÿÿÿÿÿobsÿÿÿsumÿofÿranksÿÿ
    ÿÿÿÿÿÿÿÿÿÿ1991ÿÿÿÿÿÿÿÿÿ1991ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ2ÿÿ
    ÿÿÿÿÿÿÿÿÿÿ1992ÿÿÿÿÿÿÿÿÿ1992ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿ
    ÿÿÿÿÿÿÿÿÿÿ1993ÿÿÿÿÿÿÿÿÿ1993ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ4ÿÿ
    ÿÿÿÿÿÿÿÿÿÿ1994ÿÿÿÿÿÿÿÿÿ1994ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿ10ÿÿ
    ÿÿÿÿÿÿÿÿÿÿ1995ÿÿÿÿÿÿÿÿÿ1995ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ3ÿÿ
    ÿÿÿÿÿÿÿÿÿÿ1996ÿÿÿÿÿÿÿÿÿ1996ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ6ÿÿ
    ÿÿÿÿÿÿÿÿÿÿ1997ÿÿÿÿÿÿÿÿÿ1997ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ7ÿÿ
    ÿÿÿÿÿÿÿÿÿÿ1998ÿÿÿÿÿÿÿÿÿ1998ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ8ÿÿ
    ÿÿÿÿÿÿÿÿÿÿ1999ÿÿÿÿÿÿÿÿÿ1999ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ9ÿÿ
    ÿÿÿÿÿÿÿÿÿÿ2000ÿÿÿÿÿÿÿÿÿ2000ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ5ÿÿ

    ÿÿÿÿÿÿÿÿÿÿzÿÿ=ÿÿ1.77
    ÿÿProbÿ>ÿ|z|ÿ=ÿ0.076

    .ÿ
    .ÿexit

    endÿofÿdo-file


    .


    Also, I'm not sure what you have against Stata commands (user-written ptrend or official nptrend) specifically written for tests of trend.

    Comment


    • #3
      Originally posted by Joseph Coveney View Post
      Well, here's my try. Look at the first ("linear") component of the orthogonal polynomial contrasts shown with the contrast postestimation command below.

      You would likely have a more powerful test if you could use the individual binomial values or at least the counts each year, if such data are available.

      .ÿversionÿ14.1

      .ÿ
      .ÿclearÿ*

      .ÿsetÿmoreÿoff

      .ÿ
      .ÿinputÿintÿyearÿdoubleÿoutcome

      ÿÿÿÿÿÿÿÿÿyearÿÿÿÿÿoutcome
      ÿÿ1.ÿ1991ÿ.32
      ÿÿ2.ÿ1992ÿ.23
      ÿÿ3.ÿ1993ÿ.43
      ÿÿ4.ÿ1994ÿ.69
      ÿÿ5.ÿ1995ÿ.42
      ÿÿ6.ÿ1996ÿ.56
      ÿÿ7.ÿ1997ÿ.61
      ÿÿ8.ÿ1998ÿ.65
      ÿÿ9.ÿ1999ÿ.67
      ÿ10.ÿ2000ÿ.54
      ÿ11.ÿend

      .ÿ
      .ÿgenerateÿdoubleÿsdÿ=ÿsqrt(outcomeÿ*ÿ(1ÿ-ÿoutcome))

      .ÿ
      .ÿvwlsÿoutcomeÿi.year,ÿsd(sd)

      Variance-weightedÿleast-squaresÿregressionÿÿÿÿÿÿNumberÿofÿobsÿÿÿÿÿ=ÿÿÿÿÿÿÿÿÿ10
      Goodness-of-fitÿchi2(0)ÿÿÿÿ=ÿÿÿÿÿÿÿ.ÿÿÿÿÿÿÿÿÿÿÿÿModelÿchi2(9)ÿÿÿÿÿ=ÿÿÿÿÿÿÿ1.08
      Probÿ>ÿchi2ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ=ÿÿÿÿÿÿÿ.ÿÿÿÿÿÿÿÿÿÿÿÿProbÿ>ÿchi2ÿÿÿÿÿÿÿ=ÿÿÿÿÿ0.9992
      ------------------------------------------------------------------------------
      ÿÿÿÿÿoutcomeÿ|ÿÿÿÿÿÿCoef.ÿÿÿStd.ÿErr.ÿÿÿÿÿÿzÿÿÿÿP>|z|ÿÿÿÿÿ[95%ÿConf.ÿInterval]
      -------------+----------------------------------------------------------------
      ÿÿÿÿÿÿÿÿyearÿ|
      ÿÿÿÿÿÿÿ1992ÿÿ|ÿÿÿÿÿÿÿ-.09ÿÿÿ.6282515ÿÿÿÿ-0.14ÿÿÿ0.886ÿÿÿÿÿ-1.32135ÿÿÿÿÿ1.14135
      ÿÿÿÿÿÿÿ1993ÿÿ|ÿÿÿÿÿÿÿÿ.11ÿÿÿ.6802206ÿÿÿÿÿ0.16ÿÿÿ0.872ÿÿÿÿ-1.223208ÿÿÿÿ1.443208
      ÿÿÿÿÿÿÿ1994ÿÿ|ÿÿÿÿÿÿÿÿ.37ÿÿÿ.6568866ÿÿÿÿÿ0.56ÿÿÿ0.573ÿÿÿÿ-.9174741ÿÿÿÿ1.657474
      ÿÿÿÿÿÿÿ1995ÿÿ|ÿÿÿÿÿÿÿÿÿ.1ÿÿÿ.6791171ÿÿÿÿÿ0.15ÿÿÿ0.883ÿÿÿÿ-1.231045ÿÿÿÿ1.431045
      ÿÿÿÿÿÿÿ1996ÿÿ|ÿÿÿÿÿÿÿÿ.24ÿÿÿ.6811755ÿÿÿÿÿ0.35ÿÿÿ0.725ÿÿÿÿ-1.095079ÿÿÿÿ1.575079
      ÿÿÿÿÿÿÿ1997ÿÿ|ÿÿÿÿÿÿÿÿ.29ÿÿÿ.6749074ÿÿÿÿÿ0.43ÿÿÿ0.667ÿÿÿÿ-1.032794ÿÿÿÿ1.612794
      ÿÿÿÿÿÿÿ1998ÿÿ|ÿÿÿÿÿÿÿÿ.33ÿÿÿ.6671582ÿÿÿÿÿ0.49ÿÿÿ0.621ÿÿÿÿÿ-.977606ÿÿÿÿ1.637606
      ÿÿÿÿÿÿÿ1999ÿÿ|ÿÿÿÿÿÿÿÿ.35ÿÿÿ.6623443ÿÿÿÿÿ0.53ÿÿÿ0.597ÿÿÿÿÿ-.948171ÿÿÿÿ1.648171
      ÿÿÿÿÿÿÿ2000ÿÿ|ÿÿÿÿÿÿÿÿ.22ÿÿÿ.6826419ÿÿÿÿÿ0.32ÿÿÿ0.747ÿÿÿÿ-1.117954ÿÿÿÿ1.557954
      ÿÿÿÿÿÿÿÿÿÿÿÿÿ|
      ÿÿÿÿÿÿÿ_consÿ|ÿÿÿÿÿÿÿÿ.32ÿÿÿ.4664762ÿÿÿÿÿ0.69ÿÿÿ0.493ÿÿÿÿ-.5942765ÿÿÿÿ1.234276
      ------------------------------------------------------------------------------

      .ÿcontrastÿp.year,ÿpveffectsÿnowald

      Contrastsÿofÿmarginalÿlinearÿpredictions

      Marginsÿÿÿÿÿÿ:ÿasbalanced

      -----------------------------------------------------
      ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿContrastÿÿÿStd.ÿErr.ÿÿÿÿÿÿzÿÿÿÿP>|z|
      -------------+---------------------------------------
      ÿÿÿÿÿÿÿÿyearÿ|
      ÿÿÿ(linear)ÿÿ|ÿÿÿ.1054911ÿÿÿ.1493714ÿÿÿÿÿ0.71ÿÿÿ0.480
      (quadratic)ÿÿ|ÿÿ-.0533967ÿÿÿ.1526225ÿÿÿÿ-0.35ÿÿÿ0.726
      ÿÿÿÿ(cubic)ÿÿ|ÿÿ-.0130413ÿÿÿ.1520545ÿÿÿÿ-0.09ÿÿÿ0.932
      ÿÿ(quartic)ÿÿ|ÿÿÿ-.006741ÿÿÿ.1499558ÿÿÿÿ-0.04ÿÿÿ0.964
      ÿÿ(quintic)ÿÿ|ÿÿ-.0527641ÿÿÿ.1465866ÿÿÿÿ-0.36ÿÿÿ0.719
      ÿÿÿ(sextic)ÿÿ|ÿÿÿ.0423435ÿÿÿ.1493729ÿÿÿÿÿ0.28ÿÿÿ0.777
      ÿÿÿ(septic)ÿÿ|ÿÿ-.0078873ÿÿÿ.1520726ÿÿÿÿ-0.05ÿÿÿ0.959
      ÿÿÿÿ(octic)ÿÿ|ÿÿ-.0385536ÿÿÿ.1518268ÿÿÿÿ-0.25ÿÿÿ0.800
      ÿÿÿÿ(nonic)ÿÿ|ÿÿÿ.0409304ÿÿÿ.1545442ÿÿÿÿÿ0.26ÿÿÿ0.791
      -----------------------------------------------------

      .ÿ
      .ÿ//ÿConfirmationÿthatÿtheÿregressionÿmodelÿfitsÿtheÿ"rawÿpercentages"
      .ÿpredictÿdoubleÿxb,ÿxb

      .ÿgraphÿtwowayÿscatterÿoutcomeÿyear,ÿmcolor(black)ÿmsize(small)ÿ||ÿ///
      >ÿÿÿÿÿÿÿÿÿlineÿxbÿyear,ÿsortÿlcolor(black)ÿ///
      >ÿÿÿÿÿÿÿÿÿylabel(ÿ,ÿangle(horizontal)ÿnogrid)ÿlegend(off)

      .ÿ
      .ÿ//ÿNoÿweighting,ÿonlyÿrankÿtransformation
      .ÿnptrendÿoutcome,ÿby(year)

      ÿÿÿÿÿÿÿÿÿÿyearÿÿÿÿÿÿÿÿscoreÿÿÿÿÿÿÿÿÿÿobsÿÿÿsumÿofÿranksÿÿ
      ÿÿÿÿÿÿÿÿÿÿ1991ÿÿÿÿÿÿÿÿÿ1991ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ2ÿÿ
      ÿÿÿÿÿÿÿÿÿÿ1992ÿÿÿÿÿÿÿÿÿ1992ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿ
      ÿÿÿÿÿÿÿÿÿÿ1993ÿÿÿÿÿÿÿÿÿ1993ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ4ÿÿ
      ÿÿÿÿÿÿÿÿÿÿ1994ÿÿÿÿÿÿÿÿÿ1994ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿ10ÿÿ
      ÿÿÿÿÿÿÿÿÿÿ1995ÿÿÿÿÿÿÿÿÿ1995ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ3ÿÿ
      ÿÿÿÿÿÿÿÿÿÿ1996ÿÿÿÿÿÿÿÿÿ1996ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ6ÿÿ
      ÿÿÿÿÿÿÿÿÿÿ1997ÿÿÿÿÿÿÿÿÿ1997ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ7ÿÿ
      ÿÿÿÿÿÿÿÿÿÿ1998ÿÿÿÿÿÿÿÿÿ1998ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ8ÿÿ
      ÿÿÿÿÿÿÿÿÿÿ1999ÿÿÿÿÿÿÿÿÿ1999ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ9ÿÿ
      ÿÿÿÿÿÿÿÿÿÿ2000ÿÿÿÿÿÿÿÿÿ2000ÿÿÿÿÿÿÿÿÿÿÿÿ1ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ5ÿÿ

      ÿÿÿÿÿÿÿÿÿÿzÿÿ=ÿÿ1.77
      ÿÿProbÿ>ÿ|z|ÿ=ÿ0.076

      .ÿ
      .ÿexit

      endÿofÿdo-file


      .


      Also, I'm not sure what you have against Stata commands (user-written ptrend or official nptrend) specifically written for tests of trend.


      Thank you so much for your helpful reply! I actually don't have anything against the nptrend command—it works well—but the ptrend command seems to be weighting the observations based on the proportions and giving the "change" in the proportions rather than trends over time, am I right? or are both nptrend and ptrend accepted methods for trend analysis? I appreciate your response.

      Comment

      Working...
      X