Here we post the Stata code and results for the talk “What’s behind Oregon’s rising rural child poverty? Changing economies and families.” delivered at the 2017 Oregon Parenting Education Collaborative Conference.

Analysis for the OPEC 2017 Conference

David Rothwell

October 19; Bend OR

Abstract. The rural child poverty rate in Oregon rose from 19% (2000) to 27% (2014). Changes in the economy, family structure, and social policy contribute to child poverty. In comparison to urban places, rural family structures have changed more rapidly (Lichter & Schafft, 2016). Further, rural Oregon communities have transformed away from extractive economies (e.g. timber). These social and economic changes have a strong impact on family relations. We use repeated cross-sectional data from the U.S. Census and American community survey 1980-2015 (n=533,596) to describe and explain how the changing economy and family have contributed to the rise in Oregon’s rural child poverty rate.

Description of the sample

Data is from the ACS at the IPUMS USA

Data notes

Work family codes WFF refers to a method by Waldfogel (2009) which groups children into households by the amount of parents present in the home and the number of parents employed. The five categories include: Two parents both working, One parent working, Two parents one working, One parent not working, Two parents not working.

The WFF variable has 7.85% missing data. The number of missing increases over time, from a low in 1980 of 5.98% to a high in 2015 of 11.19%. This occurs because children are living in households headed by people that are not parents, such as grandparents, aunts, uncles, and other adults.

Rural identification We use the metro variable and assume that only those identifiable nonmetro areas are rural. For rural area 1990, we use the metaread variable to assign respondents to rural (non-metro status).

Poverty across all years

  .  quietly svyset [pweight=perwt]
  . tabout povstat wff yr [aw=perwt] using sens1.txt, c(col) f(3) c
lab(%) ///
       ptotal(none) svy oneway replace 
      
      Survey results being calculated
      ----+--- 1 ---+--- 2 ---+--- 3 ---+--- 4 ---+--- 5 
  . .................
      Table output written to: sens1.txt
      
              %
      povstat 
      0       0.864
      1       0.136
      
      waldfogel five family structure: numparents and work    
      two parents both work   0.415
      single parent who works 0.146
      two parents, 1 works    0.320
      single parent not work  0.072
      two parent neither works        0.047
      
      RECODE of year (Census year)    
      1980    0.131
      1990    0.141
      2000    0.170
      2005    0.177
      2010    0.187
      2015    0.195
      
      

Child poverty across all years

  .  tabout povstat if age<18 using sens2.txt,  ///
       c(col) f(3) clab(%) ptotal(none) svy replace 
      
      Survey results being calculated
      ----+--- 1 ---+--- 2 ---+--- 3 ---+--- 4 ---+--- 5 
  . .....
      Table output written to: sens2.txt
      
      povstat %
      0       0.824
      1       0.176
      
      

Research question 1: What is the child poverty rate in Oregon over time?

  .  tabout yr if age<18 using sens3.txt,  ///
       c(mean povstat) f(3) clab(%) ptotal(none) svy sum replace 
      
      Survey results being calculated
      ----+--- 1 ---+--- 2 ---+--- 3 ---+--- 4 ---+--- 5 
  . .........
      Table output written to: sens3.txt
      
      RECODE of year (Census year)    %
      1980    0.127
      1990    0.159
      2000    0.152
      2005    0.197
      2010    0.191
      2015    0.223
      
      

Figure 1: Child poverty rate in Oregon over time

  .  use ACS1980_2015_s2, clear
  . tabstat povstat [w=perwt] if age<18, by(yr) save
      (analytic weights assumed)
      
      Summary for variables: povstat
           by categories of: yr (RECODE of year (Census year))
      
          yr |      mean
      -------+----------
        1980 |  .1272064
        1990 |  .1590949
        2000 |  .1518539
        2005 |   .196506
        2010 |  .1910055
        2015 |  .2226117
      -------+----------
       Total |  .1764346
      ------------------
      
  . tabstatmat povmat
      povmat[7,1]
                    povstat
       1980:mean  .12720643
       1990:mean  .15909493
       2000:mean  .15185385
       2005:mean  .19650604
       2010:mean  .19100546
       2015:mean  .22261172
      Total:mean  .17643462
      
  . gen orpov = .
      (863,654 missing values generated)
      
  . replace orpov = povmat[6,1] if year==2015
      (196,487 real changes made)
      
  . replace orpov = povmat[5,1] if year==2010
      (187,051 real changes made)
      
  . replace orpov = povmat[4,1] if year==2005
      (35,485 real changes made)
      
  . replace orpov = povmat[3,1] if year==2000
      (171,666 real changes made)
      
  . replace orpov = povmat[2,1] if year==1990
      (140,984 real changes made)
      
  . replace orpov = povmat[1,1] if year==1980
      (131,981 real changes made)
      
  . collapse (mean) povstat [w=perwt] if age<18, by(year rrmetro or
pov)
      (analytic weights assumed)
      
  . twoway (line orpov year, lpattern(dash_dot)), title("Child Pove
rty in Oregon") ///
       note("Source: Census ACS from IPUMS.org") ytitle("Poverty rate") ///
       legend( order(1 "rural" 2 "urban" 3 "Oregon") rows(1)) xlabel(1980(5)2015) ///
       ylabel(.1(.05).3)
      
      
      
  . graph save fig1opec, replace
      (file fig1opec.gph saved)
      
  . graph export fig1opec.png, replace
      (file fig1opec.png written in PNG format)
     

Figure 1. Oregon child poverty over time

Research question 2: What is the child poverty rate in rural Oregon over time?

  .  twoway (line povstat year if rrmetro==1) (line povstat year if
 rrmetro==0) ///
       (line orpov year, lpattern(dash_dot)), title("Child Poverty in Oregon") ///
       note("Source: Census ACS from IPUMS.org") ytitle("Poverty rate") ///
       legend( order(1 "rural" 2 "metro" 3 "Oregon") rows(1)) xlabel(1980(5)2015)
      
      
      
  . graph save fig2opec, replace
      (file fig2opec.gph saved)
      
  . graph export fig2opec.png, replace
      (file fig2opec.png written in PNG format)
      
      

Figure 2. Oregon child poverty over time across metro status

Research question 3: What is the distribution of child poverty in rural Oregon

over time?

  .  use ACS1980_2015_s2, clear
. bysort rrmetro: tabstat povstat [w=perwt] if age<18, by(yr)
          
          ------------------------------------------------------------------------------------------
          -> rrmetro = 0
          (analytic weights assumed)
          
          Summary for variables: povstat
               by categories of: yr (RECODE of year (Census year))
          
              yr |      mean
          -------+----------
            1980 |  .1187548
            1990 |  .1421516
            2000 |  .1405495
            2005 |   .185134
            2010 |  .1795117
            2015 |  .2122366
          -------+----------
           Total |  .1662067
          ------------------
          
          ------------------------------------------------------------------------------------------
          -> rrmetro = 1
          (analytic weights assumed)
          
          Summary for variables: povstat
               by categories of: yr (RECODE of year (Census year))
          
              yr |      mean
          -------+----------
            1980 |  .1415216
            1990 |  .1886461
            2000 |  .1831441
            2005 |  .2287697
            2010 |  .2263143
            2015 |  .2563507
          -------+----------
           Total |  .1961558
          ------------------
          
          ------------------------------------------------------------------------------------------
          -> rrmetro = 8
          (analytic weights assumed)
          
          Summary for variables: povstat
               by categories of: yr (RECODE of year (Census year))
          
              yr |      mean
          -------+----------
            1980 |  .1350975
            2000 |   .165318
            2005 |  .2129021
            2010 |  .2013138
            2015 |  .2404916
          -------+----------
           Total |  .2046406
          ------------------
  . bysort year: fre povstatc [w=perwt] if age<18 & rrmetro==1
      (frequency weights assumed)
      
      ------------------------------------------------------------------------------------------
      -> year = 1980
      
      povstatc
      --------------------------------------------------------------------------
                                   |      Freq.    Percent      Valid       Cum.
      -----------------------------+--------------------------------------------
      Valid   1 deep poor 1/50     |      13280       5.30       5.35       5.35
              2 poor 50/99         |      21320       8.51       8.59      13.94
              3 low-income 100/199 |      58660      23.42      23.64      37.58
              4 middle inc 200/399 |     115260      46.01      46.45      84.03
              5 upper inc 400/max  |      39640      15.82      15.97     100.00
              Total                |     248160      99.07     100.00           
      Missing .                    |       2340       0.93                      
      Total                        |     250500     100.00                      
      --------------------------------------------------------------------------
      
      ------------------------------------------------------------------------------------------
      -> year = 1990
      
      povstatc
      --------------------------------------------------------------------------
                                   |      Freq.    Percent      Valid       Cum.
      -----------------------------+--------------------------------------------
      Valid   1 deep poor 1/50     |      20613       7.86       7.95       7.95
              2 poor 50/99         |      27478      10.48      10.60      18.54
              3 low-income 100/199 |      67146      25.60      25.89      44.43
              4 middle inc 200/399 |     105426      40.19      40.65      85.08
              5 upper inc 400/max  |      38685      14.75      14.92     100.00
              Total                |     259348      98.88     100.00           
      Missing .                    |       2940       1.12                      
      Total                        |     262288     100.00                      
      --------------------------------------------------------------------------
      
      ------------------------------------------------------------------------------------------
      -> year = 2000
      
      povstatc
      --------------------------------------------------------------------------
                                   |      Freq.    Percent      Valid       Cum.
      -----------------------------+--------------------------------------------
      Valid   1 deep poor 1/50     |      14236       7.97       8.09       8.09
              2 poor 50/99         |      17657       9.89      10.03      18.12
              3 low-income 100/199 |      49714      27.83      28.25      46.37
              4 middle inc 200/399 |      65432      36.63      37.18      83.55
              5 upper inc 400/max  |      28959      16.21      16.45     100.00
              Total                |     175998      98.53     100.00           
      Missing .                    |       2625       1.47                      
      Total                        |     178623     100.00                      
      --------------------------------------------------------------------------
      
      ------------------------------------------------------------------------------------------
      -> year = 2005
      
      povstatc
      --------------------------------------------------------------------------
                                   |      Freq.    Percent      Valid       Cum.
      -----------------------------+--------------------------------------------
      Valid   1 deep poor 1/50     |      15107       8.74       8.88       8.88
              2 poor 50/99         |      21805      12.62      12.81      21.69
              3 low-income 100/199 |      52978      30.65      31.13      52.82
              4 middle inc 200/399 |      56437      32.66      33.16      85.98
              5 upper inc 400/max  |      23866      13.81      14.02     100.00
              Total                |     170193      98.48     100.00           
      Missing .                    |       2631       1.52                      
      Total                        |     172824     100.00                      
      --------------------------------------------------------------------------
      
      ------------------------------------------------------------------------------------------
      -> year = 2010
      
      povstatc
      --------------------------------------------------------------------------
                                   |      Freq.    Percent      Valid       Cum.
      -----------------------------+--------------------------------------------
      Valid   1 deep poor 1/50     |      19236      10.89      11.00      11.00
              2 poor 50/99         |      19760      11.19      11.30      22.30
              3 low-income 100/199 |      47917      27.13      27.40      49.70
              4 middle inc 200/399 |      58547      33.14      33.48      83.19
              5 upper inc 400/max  |      29403      16.65      16.81     100.00
              Total                |     174863      98.99     100.00           
      Missing .                    |       1781       1.01                      
      Total                        |     176644     100.00                      
      --------------------------------------------------------------------------
      
      ------------------------------------------------------------------------------------------
      -> year = 2015
      
      povstatc
      --------------------------------------------------------------------------
                                   |      Freq.    Percent      Valid       Cum.
      -----------------------------+--------------------------------------------
      Valid   1 deep poor 1/50     |      13738      11.71      11.86      11.86
              2 poor 50/99         |      15853      13.51      13.69      25.55
              3 low-income 100/199 |      32936      28.07      28.44      53.99
              4 middle inc 200/399 |      39238      33.44      33.88      87.87
              5 upper inc 400/max  |      14049      11.97      12.13     100.00
              Total                |     115814      98.70     100.00           
      Missing .                    |       1527       1.30                      
      Total                        |     117341     100.00                      
      --------------------------------------------------------------------------
      
  .  catplot povstatc year [w=perwt] if age<18 & rrmetro==1, percen
t(year) asyvars ///
       title("Distribution of rural child poverty in Oregon over time") stack
      
      (frequency weights assumed)
      
      
  . graph save fig3opec, replace
      (file fig3opec.gph saved)
      
  . graph export fig3opec.png, replace
      (file fig3opec.png written in PNG format)
      
      

Figure 3. Distribution of rural child poverty in Oregon over time

Changes in income distribution

  .  tabstat ftotinc_adj [aw=hhwt], by(year) stat(p1 p5 p10 p25 p50
 p75 p90 p95 p99) ///
       save
      
      
      Summary for variables: ftotinc_adj
           by categories of: year (Census year)
      
        year |        p1        p5       p10       p25       p50       p75       p90       p95       p99
      -------+----------------------------------------------------------------------------------
      --------
        1980 |         0   8864.75  14705.75     30208  55769.75   82865.5  115802.3  145346.5    221250
        1990 |         0      8601     13908  29448.36  54623.67     84363  122269.6    153720  274554.9
        2000 |         0      8418     15180     32430     59064   96434.4    144210    191820    416346
        2005 |         0      6832     12322     28060     54900     92720  140304.9    183000    406382
        2010 |         0      6912   13073.4  28395.36  55721.52  94620.96  143142.1  188089.6  360050.4
        2015 |         0      6112     12000     26000     53161     92186    142862    193222    380437
      -------+----------------------------------------------------------------------------------
      --------
       Total |         0      7564  13289.75     29028     55401   90822.9  136201.5  178282.2    361428
      ------------------------------------------------------------------------------------------
      --------
      
  . matrix b2015 =  r(Stat6)
  . matrix b1980 =  r(Stat1)
  . matrix dtime = b2015-b1980
  . svmat dtime, names(oregonincd)
  . tabstat ftotinc_adj [aw=hhwt] if rrmetro==1, by(year) stat(p1 p
5 p10 p25 p50 p75 ///
       p90 p95 p99) save
      
      
      Summary for variables: ftotinc_adj
           by categories of: year (Census year)
      
        year |        p1        p5       p10       p25       p50       p75       p90       p95       p99
      -------+----------------------------------------------------------------------------------
      --------
        1980 |         0   8540.25  14174.75  28600.25  51669.25  76744.25    105964  132764.8    221250
        1990 |         0   8097.75     12810     26535  49100.73   76237.8  108579.4    135420  227018.8
        2000 |         0      8280     13800     27876     50094     81420    118680    154560    333960
        2005 |       244      8296     13176     27267     48800     76494    111020    143960    274500
        2010 |         0    7041.6  12493.44     25920  49062.24  82939.68  121076.6  155364.5  321579.7
        2015 |         0      6297     11013     23978     45753     77052    109603    138435    285900
      -------+----------------------------------------------------------------------------------
      --------
       Total |         0   7947.69  12965.25     26800     49410     78246  111966.8  142912.8    259860
      ------------------------------------------------------------------------------------------
      --------
      
  . matrix b2015nm =  r(Stat6)
  . matrix b1980nm =  r(Stat1)
  . matrix dtimenm = b2015nm-b1980nm
  . svmat dtimenm, names(oregonincdnm)
  . tabstat ftotinc_adj [aw=hhwt] if rrmetro==0, by(year) stat(p1 p
5 p10 p25 p50 p75 ///
       p90 p95 p99) save
      
      
      Summary for variables: ftotinc_adj
           by categories of: year (Census year)
      
        year |        p1        p5       p10       p25       p50       p75       p90       p95       p99
      -------+----------------------------------------------------------------------------------
      --------
        1980 |    191.75   8894.25  14764.75   31476.5  57923.25   86405.5  120905.8  150479.5    221250
        1990 |         0   8945.04  14735.16     31659     57279     89121    129198    162870    311100
        2000 |         0      8832     16284   34486.2     62100    101154    153180  205868.4    424626
        2005 |         0    6575.8     12322     29280     58743     98942    149816    198860    421144
        2010 |         0    7009.2   13235.4  29530.44     58320  99537.12  152039.2  200333.5  370272.6
        2015 |         0      6410     12285     27190     56500     98200    152630    206000    393480
      -------+----------------------------------------------------------------------------------
      --------
       Total |         0      7686     13725  30297.24     58560   96049.8    144914    191296    389848
      ------------------------------------------------------------------------------------------
      --------
      
  . matrix b2015m =  r(Stat6)
  . matrix b1980m =  r(Stat1)
  . matrix dtimem = b2015m-b1980m
  . svmat dtimem, names(oregonincdm)
  . matrix yearw = (01\05\10\25\50\75\90\95\99)
  . svmat yearw
  . tostring yearw, generate(percentilec)
      percentilec generated as str2
      
  . gen pcent = ""
      (863,654 missing values generated)
      
  . replace pcent = percentilec if yearw>5
      variable pcent was str1 now str2
      (863,652 real changes made)
      
  . replace pcent = "01" if yearw == 1
      (1 real change made)
      
  . replace pcent = "05" if yearw == 5
      (1 real change made)
      
  .  graph bar  oregonincd1 if oregonincd1!=., over(pcent)
  . graph bar  oregonincdnm1 if oregonincdnm1!=., over(pcent) ylabe
l(0(50000)200000)  ///
       subtitle("nonmetro") ytitle("Change in dollars")
      
      
      
  . graph bar  oregonincdm1 if oregonincdm1!=., over(pcent) ylabel(
0(50000)200000) ///
       subtitle("metro") ytitle("Change in dollars")
      
      
      
  . graph combine fig4bopec.gph fig4copec.gph, ///
       title("Change in real hh income 1980-2015 percentiles")
      
      
      
  . graph save fig4opec, replace
      (file fig4opec.gph saved)
      
  . graph export fig4opec.png, replace
      (file fig4opec.png written in PNG format)
      
      

Figure 4. Change in hh income 1980-2015

Focus on rural Oregon

  .  quietly svyset [pweight=perwt]
  . keep if rrmetro ==1 //keep only rural 
      (634,023 observations deleted)
      
      

What is familywork structure of all children in 2015?

Using the Waldfogel (2009) five category

  .  tabout wff yr using sens4.txt, ///
       c(col) f(3) clab(%) ptotal(none) svy replace 
      
      Survey results being calculated
      ----+--- 1 ---+--- 2 ---+--- 3 ---+--- 4 ---+--- 5 
  . ......
      Table output written to: sens4.txt
      
              RECODE of year (Census year)                                            
      waldfogel five family structure: numparents and work    1980    1990    2000    2005    2010    2015    Total
              %       %       %       %       %       %       %
      two parents both work   0.333   0.444   0.446   0.423   0.427   0.385   0.409
      single parent who works 0.093   0.111   0.136   0.153   0.152   0.157   0.129
      two parents, 1 works    0.440   0.328   0.294   0.288   0.273   0.296   0.328
      single parent not work  0.061   0.065   0.066   0.070   0.088   0.101   0.072
      two parent neither works        0.073   0.052   0.059   0.066   0.060   0.061   0.062
      
      

What is rural familywork structure of children in 2015?

Using the Waldfogel (2009) five category

  .  catplot wff [aw=perwt] if age<18 & year==1980, percent asyvars
 vertical  ///
       ytitle("Percent")  ///
       title("Family-work structure demographics 1980") ///
       subtitle("") ///
       note("Source: IPUMS ACS") ///
       ysize(3) blabel(bar, format(%9.1f)) bargap(5)
      
      
      
  . graph save fig5aopec, replace
      (file fig5aopec.gph saved)
      
  .  catplot  wff [aw=perwt] if age<18 & year==2015, percent asyvar
s vertical  ///
       ytitle("Percent") ///
       title("Family-work structure demographics 2015") ///
       subtitle("") ///
       note("Source: IPUMS ACS") ///
       ysize(3) blabel(bar, format(%9.1f)) bargap(5)
      
      
      
  . graph save fig5bopec, replace
      (file fig5bopec.gph saved)
      
  . gr combine fig5aopec.gph fig5bopec.gph
  . graph export fig5opec.png, replace
      (file fig5opec.png written in PNG format)
      
      

 

Figure 5a. rural familywork structure in 1980

 

Figure 5b. rural familywork structure in 2015

Figure 5. rural familywork structure across time

What is rural familywork structure of children across poverty in 1980?

Using the Waldfogel (2009) five category

  .  catplot povstatcate wff [aw=perwt] if age<18 & year==1980 , pe
rcent(povstatcate) ///
       asyvars vertical  ///
       ytitle("Percent") ylabel(0(20)60) ///
       title("Family-work structure across poverty levels 1980") ///
       subtitle("") ///
       note("Source: IPUMS ACS") ///
       ysize(3) blabel(bar, format(%9.1f))
      
      
      
  . graph save fig6aopec, replace
      (file fig6aopec.gph saved)
      
      

What is rural familywork structure of children across poverty in 2015?

Using the Waldfogel (2009) five category

  .  catplot  povstatcate wff [aw=perwt] if age<18 & year==2015, pe
rcent(povstatcate) ///
       asyvars vertical  ///
       ytitle("Percent") ///
       title("Family-work structure across poverty levels 2015") ///
       subtitle("") ///
       note("Source: IPUMS ACS") ///
       ysize(3) blabel(bar, format(%9.1f))
      
      
      
  . graph save fig6bopec, replace
      (file fig6bopec.gph saved)
      
  . graph combine fig6aopec.gph fig6bopec.gph
  . graph export fig6opec.png, replace
      (file fig6opec.png written in PNG format)
      
      

 

Figure 6a. rural familywork poverty structure across poverty in 1980

 

Figure 6b. rural familywork structure across poverty in 2015

Figure 6. rural familywork structure across poverty across time

What is rural poverty rates across familywork structure over time?

  .  tabout wff year if age<18 using sens6.txt,  ///
       c(mean povstat) f(3) clab(%) ptotal(none) svy sum replace 
      
      Survey results being calculated
      ----+--- 1 ---+--- 2 ---+--- 3 ---+--- 4 ---+--- 5 
  . ...........
      Table output written to: sens6.txt
      
              Census year                                             
      waldfogel five family structure: numparents and work    1980    1990    2000    2005    2010    2015    Total
              %       %       %       %       %       %       %
      two parents both work   0.043   0.061   0.072   0.099   0.075   0.107   0.072
      single parent who works 0.264   0.315   0.275   0.374   0.342   0.313   0.316
      two parents, 1 works    0.089   0.178   0.191   0.244   0.222   0.269   0.176
      single parent not work  0.644   0.770   0.656   0.600   0.711   0.775   0.694
      two parent neither works        0.269   0.516   0.398   0.523   0.699   0.591   0.457
      
      

Figure 7: Child poverty rates by WFF for 1980 and 2015.

  .  graph bar (mean) povstat [aw=perwt] if age<18 & yr!=1 &yr!=2 &
 yr!=3 & yr!=4, over(wff, label(angle(forty_five) labsize(small))) by(yr)

Prelim analysis of hh income over time

The End

  .  quietly log close

Leave a reply

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> 

required