Announcement

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

  • tracking transitions in income changes

    Hi all,

    I would like to capture changes in income transitions specifically if the respondent has experienced a 10% drop in income in the panel. The following captures whether the respondent has experienced a change between quintiles of the income distribution but I am not sure how to adapt this to capture a 10% drop in income. Thanks in advance for your help with this.

    by pidp (wave), sort: gen byte changeinc = 0 if qhhincome[2] < qhhincome[1] & !missing(qhhincome[1])
    by pidp (wave): replace changeinc = 1 if qhhincome[2] == qhhincome[1] & !missing(qhhincome[1])
    by pidp (wave): replace changeinc = 2 if qhhincome[2] > qhhincome[1] & !missing(qhhincome[2])

    replace changeinc = . if qhhincome == .
    tab changeinc

    Code:
    * Example generated by -dataex-. To install: ssc install dataex
    clear
    input long pidp byte wave float indincome
     22445  4 3473.33
     22445  5 3636.45
     22445  6       .
     22445  7 2816.67
     22445  8    2900
     22445  9 2333.33
     22445 10 6501.12
     22445 11 6770.91
     29925  4 4755.62
     29925  6   13.82
     29925  7     500
     29925  8    1375
     29925  9    1400
     29925 10    1666
     29925 11    1800
     76165  7    5200
     76165  8    6100
     76165  9 6581.67
     76165 10    6732
     76165 11    7129
     76165 12       .
     76165 13       .
     76165 14       .
     76165 15       .
     76165 16       .
     76165 17       .
     76165 18       .
     76165 19       .
     76165 20       .
    223725  7  2199.2
    223725  8 2436.56
    280165  2 4040.59
    280165  3 5803.41
    280165  4 2769.69
    280165  5 4050.33
    280165  6 7451.07
    280165  7 8133.33
    280165  8 7769.67
    280165  9 7540.16
    280165 10   12333
    280165 11 3287.27
    280165 12       .
    280165 13       .
    280165 14       .
    280165 15       .
    280165 16       .
    333205  6    5125
    333205  7    4600
    333205  8    4625
    333205  9    2000
    333205 10 6847.16
    333205 11 5280.37
    387605  4 8350.38
    387605  5 6676.67
    387605  6    5509
    387605  7  896.18
    469205  9 3745.14
    469205 10 3319.65
    469205 11 4427.33
    469205 12       .
    469205 16       .
    469205 20       .
    541285  3 9299.95
    541285  4    1346
    541285  5    1450
    541285  6  3308.5
    541965  3 9299.95
    599765  4 9165.21
    599765  5 9205.67
    599765  9    7974
    599765 10 7551.67
    599765 11    3500
    599765 12       .
    599765 13       .
    599765 14       .
    599765 20       .
    665045  3 4144.06
    665045  4     687
    665045  5 3886.37
    665045  6 2215.02
    665045  8 4166.57
    665045 10       .
    665045 11       .
    732365  9 2546.88
    732365 10 1035.58
    732365 11    1300
    732365 12       .
    732365 13       .
    732365 14       .
    732365 16       .
    732365 17       .
    732365 18       .
    732365 19       .
    732365 20       .
    760925 10    4366
    760925 11    4600
    813285  4 2224.47
    813285  5 2651.74
    813285  6 2166.45
    813285  7 2149.48
    end
    Many thanks
    Karen

  • #2
    I don't quite follow your question. You show code you have tried, but it contains variables that do not exist in your example data, nor does it seem to have anything to do with 10% change. I'll ignore the code and just show how you can identify a drop of 10% in the variable indincome between consecutive waves:
    Code:
    xtset pidp wave
    gen pct_change_in_income = 100*D1.indincome/L1.indincome
    gen byte drop_of_more_than_10_pct = inrange(pct_change_in_income, ., -10) ///
        if !missing(pct_change_in_income)
    If this is not what you were looking for, please post back with a clearer explanation. And it would probably help to also handwork the result you want in the example data and show that as well.

    Comment


    • #3
      Thank you Clyde. Yes, indincome (n=472,826) is the variable of interest and you can ignore the code I shared previously. This is exactly what I need which is to capture the number of observations where there is a drop of more than 10% in income between consecutive waves.

      There's quite a lot of missing values in drop_of_more_than_10_pct (n=264,525) and I suppose this could be because there is no base wave comparison to calculate the 10% change in some cases for e.g., for the start of the survey year or if there is a missing value in the numerator/base?

      In the case where an individual experiences a drop in income but then their income remains constant over the remaining waves - is this captured as 1 in the coding?

      Comment


      • #4
        There's quite a lot of missing values in drop_of_more_than_10_pct (n=264,525) and I suppose this could be because there is no base wave comparison to calculate the 10% change in some cases for e.g., for the start of the survey year or if there is a missing value in the numerator/base?
        Correct. In order for their to be a change calculation there have to be valid values for the base and the follow-up.

        In the case where an individual experiences a drop in income but then their income remains constant over the remaining waves - is this captured as 1 in the coding?
        Yes. In the first year where the income drops, it is captured as a 1. But if the income remains constant over the remaining waves, all subsequent values will be 0.

        Comment

        Working...
        X