How many manufacturers?

March 13, 2017 · 4 minute read

Lately I’ve been studying a stream of papers by Autor, Dorn, and Hanson (ADH) on the impact of Chinese trade on local US labor markets. They do careful empirical work and document a number of facts:

They’ve made a compelling case that exposed workers suffered real losses in response to the Chinese trade shock. As China’s comparative advantage is in manufacturing, most of this work has been restricted to looking at the manufacturing sector in the US. I worry that this might overstate the total impact of these trade shocks on the US as a whole. Also, manufacturing in the US has been declining for at last the last 50 years. It isn’t certain that the decline in manufacturing isn’t something endogenous to the US and other developed countries.

ADH directly address the second issue (decline within US manufacturing), but the concern got me thinking about just how large the manufacturing sector is in the US.

I grabbed some data from FRED (from) and created the following plot:

Some qualitative statements about the picture above:

Here’s the (Julia) code I used to construct the plot.

using FredData, PlotlyJS, DataFrames
f = Fred();

# get the data
kwargs = Dict(
    :observation_start => "1970-01-01",
    :observation_end => string(Dates.today()),
)

# hours
man_employment = get_data(f, "MANEMP"; kwargs...).df
all_employment = get_data(f, "PAYEMS"; kwargs...).df
man_date = man_employment[:date]

get_value(a_df) = a_df[a_df[:date] .== man_date, :value]

my_data = DataFrame(date=man_date,)
my_data[:MAN] = (man_employment[:value] ./ get_value(all_employment)) .* 100

# US unemployment
unemp = get_data(f, "UNRATE"; kwargs...).df
my_data[:UNRATE] = get_value(unemp)

# entered on December 11 2001
china_WTO_date = Date(2001, 12, 11)

l1 = Layout(yaxis_ticksuffix="%", title="Manufacturing share")
l2 = Layout(yaxis_ticksuffix="%", title="US unemployment")
p1 = plot(my_data, x=:date, y=:MAN, name="Manufacturing share of labor", l1)
p2 = plot(my_data, x=:date, y=:UNRATE, name="US unemployment", l2)
p = [p1; p2]
anns = p.plot.layout[:annotations]
new_anns = vcat(anns, [attr(x=china_WTO_date, y=20.0, text="China", ax=-40, ay=0)])
relayout!(p,
    showlegend=false,
    shapes=vline([china_WTO_date], line_color="red", opacity=0.4),
    annotations=new_anns,
)

# add recession bands
add_recession_bands!(p)

References

Acemoglu, D., Autor, D., Dorn, D., Hanson, G. H., & Price, B. (2015). Import Competition and the Great US Employment Sag of the 2000s. Journal of Labor Economics, 34(S1), S141–S198. http://doi.org/10.1086/682384

Autor, D. H., Dorn, D., & Hanson, G. H. (2013). The China Syndrome: Local Labor Market Effects of Import Competition in the United States. American Economic Review, 103(6), 2121–2168. http://doi.org/10.1257/aer.103.6.2121

Autor, D. H., Dorn, D., Hanson, G. H., & Song, J. (2014). Trade Adjustment: Worker-Level Evidence. The Quarterly Journal of Economics, 129(4), 1799–1860. http://doi.org/10.1093/qje/qju026

Autor, D. H., Dorn, D., & Hanson, G. H. (2016). The China Shock: Learning from Labor-Market Adjustment to Large Changes in Trade. Annual Review of Economics, 8(1), 205–240. http://doi.org/10.1146/annurev-economics-080315-015041