The Marshall Plan (officially the European Recovery Program, ERP) was an American initiative to aid Western Europe, in which the United States gave $13 billion (approximately $130 billion in current dollar value as of August 2015) in economic support to help rebuild Western European economies after the end of World War II. The plan was in operation for four years beginning in April 1947. See https://en.wikipedia.org/wiki/Marshall_Plan#Expenditures.
For constructing resulting trends in GDP per capita we use data from https://mran.revolutionanalytics.com/package/maddison/.
library(maddison)
library(plotly)
## Loading required package: ggplot2
##
## Attaching package: 'plotly'
## Следующий объект скрыт от 'package:ggplot2':
##
## last_plot
## Следующий объект скрыт от 'package:graphics':
##
## layout
library(MASS)
str(maddison)
## Classes 'tbl_df', 'tbl' and 'data.frame': 45318 obs. of 9 variables:
## $ year : Date, format: "0001-01-01" "0730-01-01" ...
## $ country_original: chr "Austria" "Austria" "Austria" "Austria" ...
## $ gdp_pc : num NA NA NA NA NA NA NA NA NA NA ...
## $ country : chr "Austria" "Austria" "Austria" "Austria" ...
## $ iso2c : chr "AT" "AT" "AT" "AT" ...
## $ iso3c : chr "AUT" "AUT" "AUT" "AUT" ...
## $ continent : chr "Europe" "Europe" "Europe" "Europe" ...
## $ region : chr "Western Europe" "Western Europe" "Western Europe" "Western Europe" ...
## $ aggregate : logi FALSE FALSE FALSE FALSE FALSE FALSE ...
head(maddison)
## year country_original gdp_pc country iso2c iso3c continent
## 1 0001-01-01 Austria NA Austria AT AUT Europe
## 2 0730-01-01 Austria NA Austria AT AUT Europe
## 3 1000-01-01 Austria NA Austria AT AUT Europe
## 4 1150-01-01 Austria NA Austria AT AUT Europe
## 5 1280-01-01 Austria NA Austria AT AUT Europe
## 6 1300-01-01 Austria NA Austria AT AUT Europe
## region aggregate
## 1 Western Europe FALSE
## 2 Western Europe FALSE
## 3 Western Europe FALSE
## 4 Western Europe FALSE
## 5 Western Europe FALSE
## 6 Western Europe FALSE
f <- list(
family = "Courier New, monospace",
size = 12,
color = "#7f7f7f"
)
df <- subset(maddison, year >= as.Date("1800-01-01") & iso2c %in% c("DE", "FR", "IT", "GB", "US", "RU"))
plot_ly(data=df,x = year, y = gdp_pc, color = country) %>% layout(title = "GDP per capita (1800-2010)", font = f, yaxis = list(title = "GDP" ))
One can easily find the critical point on X-axis - \(1947\) year for comparing trends in GDP per capita in 1990 international Geary-Khamis dollar as a result of the Marshall plan.
We use lm to evaluate trends in GDP per capita between 1947 and 1960 for Germany, France, Italy and United Kingdom. The model is adequate but needs some arrangements. Box-Cox Transformations for Linear Models boxcox is very useful for this case.
df2 <- subset(maddison, year >= as.Date("1947-01-01") & iso2c %in% c("DE", "FR", "IT", "GB"))
df2 <- subset(df2, year <= as.Date("1960-01-01"))
plot_ly(data=df2,x = year, y = gdp_pc, color = country) %>% layout(title = "GDP per capita (1947-1960)", font = f, yaxis = list(title = "GDP" ))
df3=cbind(df2,yn=seq(1947,1960,1))
fit=lm(data = df3, gdp_pc~yn+country)
summary(fit)
##
## Call:
## lm(formula = gdp_pc ~ yn + country, data = df3)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1061.38 -166.68 -30.33 199.62 998.71
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -476368.63 25840.67 -18.435 < 2e-16 ***
## yn 246.85 13.23 18.661 < 2e-16 ***
## countryGermany -750.04 150.82 -4.973 7.85e-06 ***
## countryItaly -1938.62 150.82 -12.854 < 2e-16 ***
## countryUnited Kingdom 1654.32 150.82 10.969 5.02e-15 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 399 on 51 degrees of freedom
## Multiple R-squared: 0.9488, Adjusted R-squared: 0.9448
## F-statistic: 236.3 on 4 and 51 DF, p-value: < 2.2e-16
par(mfrow=c(2,2))
plot(fit)
par(mfrow=c(1,1))
boxcox(fit)
grid()
Now we can use the final model for verifying. The result is quite plausible for Italy in 2000.
fit=lm(data = df3, sqrt(gdp_pc)~yn +country)
predict(fit,newdata = data.frame(yn=2000,country="Italy"), interval = "prediction")^2
## fit lwr upr
## 1 20431.91 17179.85 23965.69
Money talks!