“At a certain stage of development, the material productive forces of society come into conflict with the existing relations of production or – this merely expresses the same thing in legal terms – with the property relations within the framework of which they have operated hitherto. From forms of development of the productive forces these relations turn into their fetters. Then begins an era of social revolution. The changes in the economic foundation lead sooner or later to the transformation of the whole immense superstructure. In studying such transformations it is always necessary to distinguish between the material transformation of the economic conditions of production, which can be determined with the precision of natural science, and the legal, political, religious, artistic or philosophic—in short, ideological forms in which men become conscious of this conflict and fight it out.”

– Karl Marx1

“The most widely used, and most fallacious, method in the realm of social phenomena is to tear out individual minor facts and juggle with examples. Selecting chance examples presents no difficulty at all, but is of no value, or of purely negative value, for in each individual case everything hinges on the historically concrete situation. Facts, if we take them in their entirety, in their interconnection, are not only stubborn things, but undoubtedly proof-bearing things. Minor facts, if taken out of their entirety, out of their interconnection, if they are arbitrarily selected and torn out of context, are merely things for juggling, or even worse. […] We must seek to build a reliable foundation of precise and indisputable facts that can be confronted to any of the "general" or "example-based" arguments now so grossly misused in certain countries. And if it is to be a real foundation, we must take not individual facts, but the sum total of facts, without a single exception, relating to the question under discussion. Otherwise there will be the inevitable, and fully justified, suspicion that the facts were selected or compiled arbitrarily, that instead of historical phenomena being presented in objective interconnection and interdependence and treated as a whole, we are presenting a”subjective" concoction to justify what might prove to be a dirty business. This does happen … and more often than one might think.

“Proceeding from these considerations, we have decided to begin with statistics, fully aware of course that statistics are deeply antipathetic to certain readers, who prefer”flattering deception" to “base truths”, and to certain authors, who are prone to smuggle in political contraband under cover of “general” disquisitions about internationalism, cosmopolitanism, nationalism, patriotism, etc. […] For a proper survey of the whole complex of data on national movements, we must take the whole population of the earth. And in so doing, two criteria must be established with the utmost accuracy and examined with the utmost fullness: first, national homogeneity or heterogeneity of the population of various states; second, division of states (or of state-like formations in cases where there is doubt that we are really dealing with a state) into politically independent and politically dependent."

– Vladimir I. Lenin2

“A Marxist must take cognisance of real life, of the true facts of reality, and not cling to a theory of yesterday, which, like all theories, at best only outlines the main and the general.”

– Vladimir I. Lenin3

“More economics. But not in the sense of ``general’’ discussions, learned reviews, intellectual plans and similar piffle, for, I regret to say, they are all too often just piffle and nothing more. By economics we mean the gathering, careful checking and study of the facts of the actual organisation of the new life.”

– Vladimir I. Lenin4

1 Introduction

This paper seeks to characterize the evolution of the deeper structures of late global capitalist society through the analysis of the empirical material supplied by the Penn World Table 9.1 (PWT) using Marx’s critique of capital as a theoretical framework.

The ultimate purpose of this work is to deepen our understanding of existing capitalist society to inform the workers’ movement against exploitation, via their unity in the struggle, in order to reduce the human cost of building a viable socialist society.

Section Data describes the PWT data set. Section Framework summarizes the accounting and theoretical framework used to examine the data. Sections Global view, International output-weighted view, International unweighted view, and Regional views provide graphical and statistical summaries, from various distinctive but complementary standpoints, of the time paths of the chief structural proportions characterizing global late capitalist society. Section Conclusions offers concluding remarks.

2 Data

The PWT contains internationally-comparable annual data on

The following table maps the primary empirical variables with the Marxist theoretical categories:

Symbol Marxist PWT
\(N\) population population
\(E\) employed workers engaged persons
\(l \ E = L\) direct labor time hours worked by engaged persons
\(Y\) value added real GDP output method
\(Y_e\) value added real GDP expenditure method
\(\omega \ Y = W\) variable capital labor income
\(c \ Y_e = C\) variable capital consumption spending
\(K_f\) constant capital capital services flow
\(K\) capital stock fixed capital stock

Though incomplete and of varying quality, the current version (9.1) of the panel includes 168 countries covering the 1950-2017 period (68 years). More specifically, there are 14 useful primitive numerical variables in the set, aside from the two variables that identify country and year, for a total of 173,264 data points (with 62,028 missing values, 35.8% of total numerical entries).

The following table reports on the primary variables’ missing values.

Variable Missing values (% of total entries)
\(N\) 2,391 20.9%
\(E\) 3,535 30.9%
\(L\) 9,003 78.8%
\(Y, Y_e\) 2,391 20.9%
\(W\) 4,776 41.8%
\(C\) 2,646 23.2%
\(K_f\) 5,329 46.6%
\(K\) 2,417 21.1%

Most missing values are in the earlier years covered by the panel. For example, for the subperiod 1950-1970 (21 years), there are 31,922 missing values (52.8% of the subperiod’s entries), while for the subperiod 1971-2017 (47 years), there are only 30,106 missing values (22.2% of the subperiod’s entries). The reader should keep these proportions in mind when interpreting the results below.

In spite of its deficiencies, it is clear that a massive amount of labor, more directly from the 20th-century interwar period on, has been invested across the world in designing, implementing, and developing the statistical and national accounting apparata that have permitted the capture, validation, maintenance, and accumulation of this stock of statistical material.

In a sense, the uneven way in which this body of empirical material has grown and improved qualitatively expresses and testifies to the spasmodic development of capitalist relations of production across the globe in recent decades. One may argue, for example, about the specific social character of Soviet Russia or China under Communist rule, but the late incorporation of these countries into the PWT reflects rather well the extent to which capitalist relations of production proper have gained weight in these societies.

This, inter alia, provides a compelling rationale to interpret the data naively, i.e. instead of agonizing over the extent to which the empirical categories of the PWT diverge from the theoretical categories, to assume that actually-existing state statistical agencies, under the uneven economic, political, and ideological pressures of capital, effectively conceputalizes and measures – and to that very extent – those human activities that capital deems worthy of consideration for its own sake. The PWT should be viewed as, largely, a data set of capital, by capital, and for capital’s sake.

In this spirit, this paper adopts the strong assumption that the estimates of the structural parameters that can be computed from the variables in the data set, as they exist, match plausibly the corresponding Marxist theoretical categories. Clearly, this assumption entails a measurement error of unknown size.

However, the myriad ad-hoc decisions that would be required to adjust the data set and make it more directly suitable to Marx’s critical categories would necessarily inject additional sources of error in a data set of this character and dimensions. More importantly, with the resources within this author’s reach, the cost of adjusting the data to suit theoretical strictures exceeds its potential benefits.

The largest potential discrepancies between Marxist and empirical categories refer to - the likely overestimation of the annual value added (income, net output value, or “real GDP”) as a host of ostensibly nonproductive activities (i.e. change of forms activities and hierarchical social control activities, in and outside of workplaces) are deemed to add value under national-accounting conventions, and - the likely overestimation of the labor or wage share of income and of the consumption share of spending, as national-accounting conventions include the hefty incomes of top managers and state functionaries, concrete forms of surplus value under Marx’s categorization, as labor income and include consumption of the capitalist class (broadly defined to include all people who do not live primarily off labor income proper) in the aggregate measure of consumption spending.

Most delicate is the issue of the measurement of the capital stock. Under the influence of (Sraffa 1975) and the neo-Ricardian school, a number of Marxists reject the notion of aggregate capital.6 This is not the place to offer a full rationale for taking seriously the conventional notion of aggregate capital. This author’s view on the matter is summarized here:

https://medium.com/@JulioHuato/on-the-cambridge-capital-critique-f9adfe7ec776

All that said, the primary focus of this paper is on the empirical time path of the main structural proportions of capitalist reproduction in three spheres: (1) productivity, (2) class relations (in particular, the exploitation rate formulated and emphasized by Marx), and (3) capital profitability. These structural proportions are all ratios of primary or level variables and, therefore, relatively more stable in their time-series properties than the level variables themselves.

Thus, for example, if the time series of workers’ consumption spending is inflated by the inclusion of capitalist consumption spending, the time path of workers’ consumption is invariant to this distortion as long as the proportion of capitalist to proper workers’ spending remains constant. In addition, when a structural proportion is estimated by taking the ratio of two similarly inflated variables, their distortions largely cancel out in the resulting ratio, which makes the estimation of the time-series trajectory of the ratio much more robust.

In sum, the time-series characterization of the structural parameters of interest is affected by the overestimation of certain primary variables only inasmuch as the proportions among such discrepancies grow, decay, and/or fluctuate significantly over time. As long as the magnitude of the discrepancies between theoretical and empirical categories remains roughly constant, the time-series properties of the structural proportions are relatively unaffected.

In any case, to allow full replicability of results and assist the further refinement of this analysis, data sets and this R Markdown file are kept here:

https://github.com/jhuato/deeper_structures

The analysis of the data set is effected from three distinctive, yet complementary standpoints:

  1. The global view.
  2. The unweighted international view.
  3. The output-weighted international view.
  4. The regional view.

To clarify these criteria, let \(X_{it}\) and \(Z_{it}\) be two primary variables for country \(i\) and year \(t\). Then, with \(n\) countries in the sample, the global aggregation of these primary variables is given generally by: \[X_t = \sum_{i=1}^{n} X_{it},\] \[Z_t = \sum_{i=1}^{n} Z_{it}.\]

Again, structural proportions are ratios of primary variables. Thus, for example, \(\theta_{it} = X_{it}/Z_{it}\) is a structural proportion for country \(i\) and year \(t\), while \(\theta_t = X_t/Z_t\) is a global structural proportion for year \(t\).

Clearly, \(\theta_t\) is a mean or average in the sense of being the ratio of two means, \[\theta_t = \frac{\sum_{i=1}^n X_{it}/n}{\sum_{i=1}^n Z_{it}/n}.\]

However, this average is to be sharply distinguished from the following averages.

The following statistic, \[\bar{\theta}_t \equiv \frac{1}{n} \sum_{i=1}^{n} \theta_{it},\]

is an unweighted international mean of the \(n\) countries’ structural proportions \(\theta_{it}\) in year \(t\).

Finally, let \(\alpha_{it} = Y_{it}/\sum_{i=1}^{n} Y_{it}\) be the output weight or economic weight of country \(i\) in global output in year \(t\). (Note that \(\sum_{i=1}^{n} \alpha_{it} = 1\) in each year \(t\).) Then, \[\bar{\bar{\theta}}_t \equiv \sum_{i=1}^{n} \alpha_{it} \ \theta_{it}\] represents the one-dollar, one-unit or output-weighted international mean of the \(n\) countries’ structural proportions \(\theta_{it}\) for year \(t\).

In turn, for any primary variable or structural proportion an array of statistics will be computed to characterize its time-series behavior; statistics such as (1) the geometric growth rate, \[\hat{X}_t \equiv \hat{\beta}_1,\] i.e. the estimated slope coefficient in regression model \[\log{X}_t = \hat{\beta}_0 + \hat{\beta}_1 \ t,\]

  1. the time-mean, \[\overline{X}^T \equiv \sum_{t=1}^T X_t,\]
  2. the autocovariances, \[s^T_{t, \ t-k} \equiv \frac{1}{T-1} \left[ \sum_{t=1}^T (X_t - \bar{X}^T) (X_{t-k} - \bar{X}^T) \right],\] for \(k=1, \dots, T\), in particular the time-variance \[(s^2)^T_t \equiv \frac{1}{T-1} \left[ \sum_{t=1}^T (X_t - \bar{X}^T)^2 \right],\] and (4) auto-correlations (under the assumption of constant time-variance), \[\rho^T_{t, \ t-k} \equiv \frac{s^T_{t, \ t-k} }{\sqrt{(s^2)^T_t}}.\] In general, the superscript \(T\) indicates a time-average statistic. This superscript should not be confused with an exponent!

The following code loads the data, prepares the primary variables for further analysis, and renders a statistical summary of the data set.

# DATA LOAD & COUNTRY/YEAR PRIMARY VARIABLES
library(readr)
library(readr)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(Hmisc)
## Warning: package 'Hmisc' was built under R version 3.6.3
## Loading required package: lattice
## Loading required package: survival
## Warning: package 'survival' was built under R version 3.6.3
## Loading required package: Formula
## Loading required package: ggplot2
## Warning: package 'ggplot2' was built under R version 3.6.3
## 
## Attaching package: 'Hmisc'
## The following objects are masked from 'package:dplyr':
## 
##     src, summarize
## The following objects are masked from 'package:base':
## 
##     format.pval, units
x  <- read_csv("C:/Users/jhuat/Downloads/pwt91.csv")
## Parsed with column specification:
## cols(
##   .default = col_double(),
##   countrycode = col_character(),
##   country = col_character(),
##   currency_unit = col_character(),
##   i_cig = col_character(),
##   i_xm = col_character(),
##   i_xr = col_character(),
##   i_outlier = col_character(),
##   i_irr = col_character()
## )
## See spec(...) for full column specifications.
# x <- x[ which(x$year > 1953 ), ]
x$c <- x$csh_c
x$c[x$c<0 | x$c>1] <- NA 
x$Y <- x$rgdpo 
x$Ye <- x$rgdpe
x$om <- x$labsh
x$l <- x$avh
x$Kf <- x$rkna
x$W <- x$labsh * x$Y
x$C <- x$c * x$Ye
x$K <- x$rnna
x$N <- x$pop
x$E <- x$emp
x$L <- x$avh * x$E
x$A <- x$rtfpna
x$rr <- x$irr
x <- x[ , c(1, 4, 53:66)]
str(x)
## Classes 'tbl_df', 'tbl' and 'data.frame':    12376 obs. of  16 variables:
##  $ countrycode: chr  "ABW" "ABW" "ABW" "ABW" ...
##  $ year       : num  1950 1951 1952 1953 1954 ...
##  $ c          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ Y          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ Ye         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ om         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ l          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ Kf         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ W          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ C          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ K          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ N          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ E          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ L          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ A          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ rr         : num  NA NA NA NA NA NA NA NA NA NA ...
summary(x)
##  countrycode             year            c                Y           
##  Length:12376       Min.   :1950   Min.   :0.0256   Min.   :      20  
##  Class :character   1st Qu.:1967   1st Qu.:0.5332   1st Qu.:    6381  
##  Mode  :character   Median :1984   Median :0.6305   Median :   27106  
##                     Mean   :1984   Mean   :0.6249   Mean   :  269193  
##                     3rd Qu.:2000   3rd Qu.:0.7373   3rd Qu.:  137473  
##                     Max.   :2017   Max.   :0.9998   Max.   :18383838  
##                                    NA's   :2646     NA's   :2391      
##        Ye                 om              l              Kf       
##  Min.   :      18   Min.   :0.090   Min.   :1354   Min.   :0.008  
##  1st Qu.:    6178   1st Qu.:0.446   1st Qu.:1799   1st Qu.:0.210  
##  Median :   27259   Median :0.545   Median :1972   Median :0.478  
##  Mean   :  272057   Mean   :0.533   Mean   :1984   Mean   :0.534  
##  3rd Qu.:  138656   3rd Qu.:0.624   3rd Qu.:2150   3rd Qu.:0.829  
##  Max.   :18396068   Max.   :0.900   Max.   :2911   Max.   :3.034  
##  NA's   :2391       NA's   :4341    NA's   :9003   NA's   :5329   
##        W                  C                  K                  N            
##  Min.   :      18   Min.   :      11   Min.   :      16   Min.   :   0.0044  
##  1st Qu.:    4932   1st Qu.:    4219   1st Qu.:   20008   1st Qu.:   1.6345  
##  Median :   18927   Median :   17246   Median :  103665   Median :   6.1154  
##  Mean   :  191852   Mean   :  161781   Mean   : 1128533   Mean   :  30.7368  
##  3rd Qu.:  100229   3rd Qu.:   79777   3rd Qu.:  601539   3rd Qu.:  19.8915  
##  Max.   :10720879   Max.   :13076158   Max.   :94903728   Max.   :1409.5175  
##  NA's   :4776       NA's   :2646       NA's   :2417       NA's   :2391       
##        E                 L                 A               rr       
##  Min.   :  0.001   Min.   :     89   Min.   :0.234   Min.   :0.010  
##  1st Qu.:  0.940   1st Qu.:   5431   1st Qu.:0.853   1st Qu.:0.066  
##  Median :  3.021   Median :  11989   Median :0.982   Median :0.110  
##  Mean   : 14.799   Mean   :  60746   Mean   :0.994   Mean   :0.136  
##  3rd Qu.:  8.583   3rd Qu.:  44254   3rd Qu.:1.059   3rd Qu.:0.177  
##  Max.   :792.575   Max.   :1723336   Max.   :7.107   Max.   :1.060  
##  NA's   :3535      NA's   :9003      NA's   :6370    NA's   :4789
table(is.na(x))
## 
##  FALSE   TRUE 
## 135988  62028
table(is.na(x[,-c(1:2)]))
## 
##  FALSE   TRUE 
## 111236  62028
table(is.na(x[c(1:20), ]))
## 
## FALSE  TRUE 
##    40   280
table(is.na(x[ which(x$year < 1971), ]))
## 
## FALSE  TRUE 
## 29230 31922
table(is.na(x[ which(x$year >= 1971), ]))
## 
##  FALSE   TRUE 
## 106758  30106
# A NAs: 6370/11424 = 55.7%
# rr NAs: 4789/11424 = 41.9%

The variables (hereon called structural proportions or structural parameters) that capture the deeper structural fabric of a capitalist society are, respectively,

  1. Labor productivity, measured by
  1. Exploitation or balance of class forces, measured by
  1. Profitability of capital, measured by

The following table maps the theoretical and empirical structural parameters of interest:

Symbol Structural variable
\(y_N \equiv Y/N\) per-capita output
\(y_E \equiv Y/E\) per-worker output
\(y_L \equiv Y/L\) per-hour output
\(w_N \equiv (\omega \ Y)/N\) per-capita output
\(w_E \equiv (\omega \ Y)/E\) per-worker output
\(w_L \equiv (\omega \ Y)/L\) per-hour output
\(c_N \equiv (c \ Y)/N\) per-capita output
\(c_E \equiv (c \ Y)/E\) per-worker output
\(c_L \equiv (c \ Y)/L\) per-hour output
\(\sigma \equiv (1-\omega)/\omega\) exploitation rate
\(\sigma_s \equiv (1-c)/c\) spending exploitation rate
\(h \equiv K/E\) (stock-stock) capital composition
\(h_0 \equiv K/L\) (stock-stock, hourly) capital composition
\(h_f \equiv K_f/W\) (flow-flow) capital composition
\(\gamma \equiv Y/K\) output-capital ratio
\(r \equiv [(1-\omega) \ Y]/K\) profit rate
\(\kappa \equiv [(1-c) \ Y]/K\) accumulation rate

This computes the annual structural proportions for each country:

# COUNTRY/YEAR STRUCTURAL PROPORTIONS
x$yN <- x$Y/x$N
x$yE <- x$Y/x$E
x$yL <- x$Y/x$L
x$wN <- (1 - x$om)*x$Y/x$N
x$wE <- (1 - x$om)*x$Y/x$E
x$wL <- (1 - x$om)*x$Y/x$L
x$cN <- (1 - x$c)*x$Y/x$N
x$cE <- (1 - x$c)*x$Y/x$E
x$cL <- (1 - x$c)*x$Y/x$L
x$s <- (1 - x$om)/x$om
x$ss <- (1 - x$c)/x$c
x$h <- x$K/x$E
x$h0 <- x$K/x$L
x$hf <- x$Kf*1e+06/x$W
x$hf0 <- x$Kf*1e+06/x$L
x$ga <- x$Y/x$K
x$r <- (1 - x$om)*x$Y/x$K
x$ka <- (1 - x$c)*x$Y/x$K
str(x)
## Classes 'tbl_df', 'tbl' and 'data.frame':    12376 obs. of  34 variables:
##  $ countrycode: chr  "ABW" "ABW" "ABW" "ABW" ...
##  $ year       : num  1950 1951 1952 1953 1954 ...
##  $ c          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ Y          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ Ye         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ om         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ l          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ Kf         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ W          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ C          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ K          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ N          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ E          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ L          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ A          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ rr         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ yN         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ yE         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ yL         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ wN         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ wE         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ wL         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ cN         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ cE         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ cL         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ s          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ ss         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ h          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ h0         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ hf         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ hf0        : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ ga         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ r          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ ka         : num  NA NA NA NA NA NA NA NA NA NA ...
summary(x)
##  countrycode             year            c                Y           
##  Length:12376       Min.   :1950   Min.   :0.0256   Min.   :      20  
##  Class :character   1st Qu.:1967   1st Qu.:0.5332   1st Qu.:    6381  
##  Mode  :character   Median :1984   Median :0.6305   Median :   27106  
##                     Mean   :1984   Mean   :0.6249   Mean   :  269193  
##                     3rd Qu.:2000   3rd Qu.:0.7373   3rd Qu.:  137473  
##                     Max.   :2017   Max.   :0.9998   Max.   :18383838  
##                                    NA's   :2646     NA's   :2391      
##        Ye                 om              l              Kf       
##  Min.   :      18   Min.   :0.090   Min.   :1354   Min.   :0.008  
##  1st Qu.:    6178   1st Qu.:0.446   1st Qu.:1799   1st Qu.:0.210  
##  Median :   27259   Median :0.545   Median :1972   Median :0.478  
##  Mean   :  272057   Mean   :0.533   Mean   :1984   Mean   :0.534  
##  3rd Qu.:  138656   3rd Qu.:0.624   3rd Qu.:2150   3rd Qu.:0.829  
##  Max.   :18396068   Max.   :0.900   Max.   :2911   Max.   :3.034  
##  NA's   :2391       NA's   :4341    NA's   :9003   NA's   :5329   
##        W                  C                  K                  N            
##  Min.   :      18   Min.   :      11   Min.   :      16   Min.   :   0.0044  
##  1st Qu.:    4932   1st Qu.:    4219   1st Qu.:   20008   1st Qu.:   1.6345  
##  Median :   18927   Median :   17246   Median :  103665   Median :   6.1154  
##  Mean   :  191852   Mean   :  161781   Mean   : 1128533   Mean   :  30.7368  
##  3rd Qu.:  100229   3rd Qu.:   79777   3rd Qu.:  601539   3rd Qu.:  19.8915  
##  Max.   :10720879   Max.   :13076158   Max.   :94903728   Max.   :1409.5175  
##  NA's   :4776       NA's   :2646       NA's   :2417       NA's   :2391       
##        E                 L                 A               rr       
##  Min.   :  0.001   Min.   :     89   Min.   :0.234   Min.   :0.010  
##  1st Qu.:  0.940   1st Qu.:   5431   1st Qu.:0.853   1st Qu.:0.066  
##  Median :  3.021   Median :  11989   Median :0.982   Median :0.110  
##  Mean   : 14.799   Mean   :  60746   Mean   :0.994   Mean   :0.136  
##  3rd Qu.:  8.583   3rd Qu.:  44254   3rd Qu.:1.059   3rd Qu.:0.177  
##  Max.   :792.575   Max.   :1723336   Max.   :7.107   Max.   :1.060  
##  NA's   :3535      NA's   :9003      NA's   :6370    NA's   :4789   
##        yN                 yE                  yL                wN          
##  Min.   :   131.3   Min.   :    485.8   Min.   :  0.582   Min.   :    59.7  
##  1st Qu.:  2288.1   1st Qu.:   7232.0   1st Qu.:  7.441   1st Qu.:  1330.9  
##  Median :  5705.5   Median :  17967.4   Median : 16.455   Median :  3278.2  
##  Mean   : 12936.7   Mean   :  29436.3   Mean   : 20.385   Mean   :  6642.0  
##  3rd Qu.: 14579.9   3rd Qu.:  38315.2   3rd Qu.: 29.727   3rd Qu.:  7518.9  
##  Max.   :792461.3   Max.   :1343051.6   Max.   :109.772   Max.   :325926.0  
##  NA's   :2391       NA's   :3535        NA's   :9003      NA's   :4776      
##        wE                 wL               cN                  cE          
##  Min.   :   220.9   Min.   : 0.342   Min.   :     0.41   Min.   :     2.2  
##  1st Qu.:  4463.8   1st Qu.: 4.128   1st Qu.:   654.50   1st Qu.:  2114.9  
##  Median :  9756.6   Median : 7.706   Median :  2006.61   Median :  6354.8  
##  Mean   : 15252.5   Mean   : 9.325   Mean   :  5736.93   Mean   : 13754.2  
##  3rd Qu.: 19563.1   3rd Qu.:12.696   3rd Qu.:  6308.26   3rd Qu.: 16542.0  
##  Max.   :552374.5   Max.   :66.553   Max.   :290844.78   Max.   :545323.2  
##  NA's   :5399       NA's   :9237     NA's   :2646        NA's   :3744      
##        cL               s                ss                h            
##  Min.   : 0.011   Min.   : 0.111   Min.   : 0.0002   Min.   :    335.4  
##  1st Qu.: 2.453   1st Qu.: 0.602   1st Qu.: 0.3563   1st Qu.:  24256.0  
##  Median : 6.727   Median : 0.834   Median : 0.5862   Median :  78472.0  
##  Mean   : 8.755   Mean   : 1.026   Mean   : 0.8127   Mean   : 129672.7  
##  3rd Qu.:12.502   3rd Qu.: 1.242   3rd Qu.: 0.8755   3rd Qu.: 187028.6  
##  Max.   :75.792   Max.   :10.154   Max.   :38.1371   Max.   :2341371.5  
##  NA's   :9007     NA's   :4341     NA's   :2646      NA's   :3542       
##        h0                hf                hf0                 ga         
##  Min.   :  0.225   Min.   :   0.020   Min.   :   0.029   Min.   : 0.0204  
##  1st Qu.: 32.193   1st Qu.:   4.045   1st Qu.:  10.260   1st Qu.: 0.1757  
##  Median : 77.046   Median :  17.627   Median :  29.475   Median : 0.2569  
##  Mean   :100.344   Mean   : 103.742   Mean   : 181.398   Mean   : 0.3730  
##  3rd Qu.:151.378   3rd Qu.:  80.228   3rd Qu.: 111.643   3rd Qu.: 0.3702  
##  Max.   :356.615   Max.   :4974.896   Max.   :4137.318   Max.   :11.6016  
##  NA's   :9003      NA's   :5329       NA's   :9368       NA's   :2417     
##        r               ka        
##  Min.   :0.009   Min.   :0.0002  
##  1st Qu.:0.073   1st Qu.:0.0591  
##  Median :0.109   Median :0.0863  
##  Mean   :0.153   Mean   :0.1293  
##  3rd Qu.:0.166   3rd Qu.:0.1311  
##  Max.   :2.391   Max.   :4.7978  
##  NA's   :4789    NA's   :2668
table(is.na(x[,c(17:34)]))
## 
##  FALSE   TRUE 
## 128927  93841
table(is.na(x[ which(x$year < 1971), c(17:34)]))
## 
## FALSE  TRUE 
## 24695 44101
table(is.na(x[ which(x$year >= 1971), c(17:34)]))
## 
##  FALSE   TRUE 
## 104232  49740

The following code computes the global aggregates and medians of the primary variables.

# GLOBAL PRIMARY VARIABLES
N <- tapply(x$N, x$year, sum, na.rm=TRUE) 
E <- tapply(x$E, x$year, sum, na.rm=TRUE)
L <- tapply(x$L, x$year, sum, na.rm=TRUE) 
Y <- tapply(x$Y, x$year, sum, na.rm=TRUE) 
Ye <- tapply(x$Ye, x$year, sum, na.rm=TRUE) 
W <- tapply(x$W, x$year, sum, na.rm=TRUE) 
C <- tapply(x$C, x$year, sum, na.rm=TRUE) 
K <- tapply(x$K, x$year, sum, na.rm=TRUE)
Kf <- tapply(x$Kf, x$year, sum, na.rm=TRUE)

mN <- tapply(x$N, x$year, median, na.rm=TRUE) 
mE <- tapply(x$E, x$year, median, na.rm=TRUE) 
mL <- tapply(x$L, x$year, median, na.rm=TRUE) 
mY <- tapply(x$Y, x$year, median, na.rm=TRUE) 
mYe <- tapply(x$Ye, x$year, median, na.rm=TRUE) 
mW <- tapply(x$W, x$year, median, na.rm=TRUE) 
mC <- tapply(x$C, x$year, median, na.rm=TRUE) 
mK <- tapply(x$K, x$year, median, na.rm=TRUE) 
mKf <- tapply(x$Kf, x$year, median, na.rm=TRUE) 

The following structural proportions are global, i.e. they are computed on the basis of the corresponding globally agggregated primary variables.

# GLOBAL STRUCTURAL PARAMETERS
yN <- Y/N
yE <- Y/E
yL <- Y/L
wN <- W/N
wE <- W/E
wL <- W/L
cN <- C/N
cE <- C/E
cL <- C/L
s <- (Y-W)/W
ss <- (Y - C)/C
h <- K/E
h0 <- K*1e+06/L
hf <- Kf*1e+06/W
hf0 <- Kf/L
ga <- Y/K
r <- (Y-W)/K
ka <- (Y-C)/K

myN <- mY/mN
myE <- mY/mE
myL <- mY/mL
mwN <- mW/mN
mwE <- mW/mE
mwL <- mW/mL
mcN <- mC/mN
mcE <- mC/mE
mcL <- mC/mL
ms <- (mY-mW)/mW
mss <- (mY-mC)/mC
mh <- mK/mE
mh0 <- mK*1e+06/mL
mhf <- mKf*1e+06/mW
mhf0 <- mKf/mL
mga <- mY/mK
mr <- (mY-mW)/mW
mka <- (mY-mC)/mC

year <- c(1950:2017)
g <- data.frame(year, N, E, L, Y, Ye, W, C, 
                K, Kf, yN, yE, yL, wN, wE, wL,
                cN, cE, cL, s, ss, h, h0, hf, 
                hf0, ga, r, ka, myN, myE, myL,
                mwN, mwE, mwL, mcN, mcE, mcL, 
                ms, mss, mh, mh0, mhf, mhf0, 
                mga, mr, mka)
str(g)
## 'data.frame':    68 obs. of  46 variables:
##  $ year: int  1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 ...
##  $ N   : num  1298 1347 1948 2004 2047 ...
##  $ E   : num  543 562 809 830 846 ...
##  $ L   : num  609666 642763 647687 668940 674430 ...
##  $ Y   : num  5677763 6138655 6987939 7402751 7574162 ...
##  $ Ye  : num  5742468 6180436 7049462 7487813 7667910 ...
##  $ W   : num  3454718 3737878 4281487 4536059 4620027 ...
##  $ C   : num  3889349 4031801 4551824 4819567 4961254 ...
##  $ K   : num  23079170 24535708 26011215 27260642 28542956 ...
##  $ Kf  : num  0 0 0 0 4.44 ...
##  $ yN  : num  4373 4559 3588 3694 3699 ...
##  $ yE  : num  10457 10928 8642 8918 8955 ...
##  $ yL  : num  9.31 9.55 10.79 11.07 11.23 ...
##  $ wN  : num  2661 2776 2198 2263 2257 ...
##  $ wE  : num  6363 6654 5295 5464 5462 ...
##  $ wL  : num  5.67 5.82 6.61 6.78 6.85 ...
##  $ cN  : num  2996 2994 2337 2405 2423 ...
##  $ cE  : num  7163 7178 5629 5806 5866 ...
##  $ cL  : num  6.38 6.27 7.03 7.2 7.36 ...
##  $ s   : num  0.643 0.642 0.632 0.632 0.639 ...
##  $ ss  : num  0.46 0.523 0.535 0.536 0.527 ...
##  $ h   : num  42508 43680 32166 32839 33746 ...
##  $ h0  : num  37855451 38172275 40160157 40752009 42321575 ...
##  $ hf  : num  0 0 0 0 0.961 ...
##  $ hf0 : num  0.00 0.00 0.00 0.00 6.58e-06 ...
##  $ ga  : num  0.246 0.25 0.269 0.272 0.265 ...
##  $ r   : num  0.0963 0.0978 0.104 0.1052 0.1035 ...
##  $ ka  : num  0.0775 0.0859 0.0937 0.0948 0.0915 ...
##  $ myN : num  3180 3413 3419 3280 3095 ...
##  $ myE : num  7180 8506 8538 8319 7284 ...
##  $ myL : num  2.89 3.42 3.52 3.38 2.81 ...
##  $ mwN : num  1912 1677 1860 1766 2081 ...
##  $ mwE : num  4317 4180 4646 4478 4898 ...
##  $ mwL : num  1.74 1.68 1.92 1.82 1.89 ...
##  $ mcN : num  2188 2301 2190 2125 2149 ...
##  $ mcE : num  4940 5733 5469 5390 5058 ...
##  $ mcL : num  1.99 2.31 2.26 2.19 1.95 ...
##  $ ms  : num  0.663 1.035 0.838 0.858 0.487 ...
##  $ mss : num  0.454 0.484 0.561 0.543 0.44 ...
##  $ mh  : num  28536 30619 32264 33333 32946 ...
##  $ mh0 : num  11501337 12328241 13307959 13560891 12726674 ...
##  $ mhf : num  NA NA NA NA 5.61 ...
##  $ mhf0: num  NA NA NA NA 1.06e-05 ...
##  $ mga : num  0.252 0.278 0.265 0.25 0.221 ...
##  $ mr  : num  0.663 1.035 0.838 0.858 0.487 ...
##  $ mka : num  0.454 0.484 0.561 0.543 0.44 ...
summary(g)
##       year            N              E                L          
##  Min.   :1950   Min.   :1298   Min.   : 542.9   Min.   : 609666  
##  1st Qu.:1967   1st Qu.:2998   1st Qu.:1148.7   1st Qu.: 773450  
##  Median :1984   Median :4355   Median :1841.5   Median :3180001  
##  Mean   :1984   Mean   :4513   Mean   :1924.2   Mean   :3013183  
##  3rd Qu.:2000   3rd Qu.:6069   3rd Qu.:2645.4   3rd Qu.:4549833  
##  Max.   :2017   Max.   :7418   Max.   :3317.2   Max.   :5547437  
##                                                                  
##        Y                   Ye                  W                  C           
##  Min.   :  5677763   Min.   :  5742468   Min.   : 3454718   Min.   : 3889349  
##  1st Qu.: 14427978   1st Qu.: 14648397   1st Qu.: 8524280   1st Qu.: 8918942  
##  Median : 28521648   Median : 28611031   Median :15908225   Median :16957504  
##  Mean   : 39527802   Mean   : 39948361   Mean   :21442320   Mean   :23148922  
##  3rd Qu.: 56565903   3rd Qu.: 57785296   3rd Qu.:31462535   3rd Qu.:34060245  
##  Max.   :111287146   Max.   :113833304   Max.   :57626665   Max.   :64250794  
##                                                                               
##        K                   Kf               yN              yE       
##  Min.   : 23079170   Min.   :  0.00   Min.   : 3588   Min.   : 8642  
##  1st Qu.: 56946666   1st Qu.: 15.50   1st Qu.: 4813   1st Qu.:12560  
##  Median :131393785   Median : 43.37   Median : 6647   Median :15947  
##  Mean   :165280293   Mean   : 55.29   Mean   : 7570   Mean   :17773  
##  3rd Qu.:249608121   3rd Qu.: 85.64   3rd Qu.: 9321   3rd Qu.:21383  
##  Max.   :454990422   Max.   :169.11   Max.   :15003   Max.   :33548  
##                                                                      
##        yL               wN             wE              wL        
##  Min.   : 7.829   Min.   :2198   Min.   : 5295   Min.   : 4.573  
##  1st Qu.: 9.365   1st Qu.:2843   1st Qu.: 7420   1st Qu.: 5.305  
##  Median :11.853   Median :3739   Median : 9017   Median : 6.816  
##  Mean   :12.785   Mean   :4176   Mean   : 9826   Mean   : 7.170  
##  3rd Qu.:15.862   3rd Qu.:5184   3rd Qu.:11892   3rd Qu.: 8.488  
##  Max.   :20.574   Max.   :7769   Max.   :17372   Max.   :12.224  
##                                                                  
##        cN             cE              cL               s         
##  Min.   :2337   Min.   : 5629   Min.   : 4.661   Min.   :0.6320  
##  1st Qu.:2995   1st Qu.: 7764   1st Qu.: 5.546   1st Qu.:0.6987  
##  Median :3907   Median : 9396   Median : 7.344   Median :0.7755  
##  Mean   :4483   Mean   :10536   Mean   : 7.671   Mean   :0.7782  
##  3rd Qu.:5612   3rd Qu.:12875   3rd Qu.: 9.252   3rd Qu.:0.8118  
##  Max.   :8662   Max.   :19369   Max.   :12.538   Max.   :0.9624  
##                                                                  
##        ss               h                h0                 hf       
##  Min.   :0.4598   Min.   : 32166   Min.   :30537246   Min.   :0.000  
##  1st Qu.:0.6167   1st Qu.: 49569   1st Qu.:41035847   1st Qu.:1.790  
##  Median :0.6842   Median : 71348   Median :50630910   Median :2.479  
##  Mean   :0.6664   Mean   : 74078   Mean   :52612285   Mean   :2.156  
##  3rd Qu.:0.7147   3rd Qu.: 94353   3rd Qu.:62480333   3rd Qu.:2.786  
##  Max.   :0.8056   Max.   :137159   Max.   :82018139   Max.   :2.959  
##                                                                      
##       hf0                  ga               r                 ka         
##  Min.   :0.000e+00   Min.   :0.2156   Min.   :0.09406   Min.   :0.07749  
##  1st Qu.:1.120e-05   1st Qu.:0.2240   1st Qu.:0.09786   1st Qu.:0.09011  
##  Median :1.365e-05   Median :0.2453   Median :0.10374   Median :0.09457  
##  Mean   :1.543e-05   Mean   :0.2420   Mean   :0.10537   Mean   :0.09632  
##  3rd Qu.:2.009e-05   3rd Qu.:0.2561   3rd Qu.:0.10661   3rd Qu.:0.10185  
##  Max.   :3.048e-05   Max.   :0.2716   Max.   :0.12934   Max.   :0.11767  
##                                                                          
##       myN            myE             myL             mwN            mwE       
##  Min.   :2588   Min.   : 3939   Min.   :0.935   Min.   :1677   Min.   : 2690  
##  1st Qu.:3072   1st Qu.: 5272   1st Qu.:1.266   1st Qu.:2224   1st Qu.: 3974  
##  Median :3381   Median : 7621   Median :2.043   Median :2801   Median : 6486  
##  Mean   :4122   Mean   : 8646   Mean   :2.276   Mean   :3034   Mean   : 6371  
##  3rd Qu.:4437   3rd Qu.:10559   3rd Qu.:2.969   3rd Qu.:3161   3rd Qu.: 7494  
##  Max.   :8435   Max.   :17262   Max.   :4.899   Max.   :6328   Max.   :13197  
##                                                                               
##       mwL              mcN            mcE             mcL        
##  Min.   :0.6589   Min.   :1722   Min.   : 2324   Min.   :0.5576  
##  1st Qu.:1.0718   1st Qu.:2082   1st Qu.: 3739   1st Qu.:0.8496  
##  Median :1.4896   Median :2290   Median : 5184   Median :1.4332  
##  Mean   :1.6349   Mean   :2731   Mean   : 5724   Mean   :1.5257  
##  3rd Qu.:1.9152   3rd Qu.:2829   3rd Qu.: 6766   3rd Qu.:2.1293  
##  Max.   :3.5155   Max.   :6104   Max.   :12492   Max.   :3.5453  
##                                                                  
##        ms                mss               mh             mh0          
##  Min.   :0.004873   Min.   :0.2503   Min.   :11833   Min.   : 2955076  
##  1st Qu.:0.255766   1st Qu.:0.4308   1st Qu.:19196   1st Qu.: 5938850  
##  Median :0.387052   Median :0.5125   Median :33612   Median : 7792933  
##  Mean   :0.376325   Mean   :0.5204   Mean   :34147   Mean   : 9017490  
##  3rd Qu.:0.473724   3rd Qu.:0.6095   3rd Qu.:43524   3rd Qu.:12427849  
##  Max.   :1.034915   Max.   :0.9791   Max.   :65032   Max.   :18457130  
##                                                                        
##       mhf              mhf0              mga               mr          
##  Min.   : 5.612   Min.   :1.1e-05   Min.   :0.1985   Min.   :0.004873  
##  1st Qu.:17.615   1st Qu.:1.5e-05   1st Qu.:0.2254   1st Qu.:0.255766  
##  Median :21.875   Median :2.7e-05   Median :0.2641   Median :0.387052  
##  Mean   :21.139   Mean   :3.5e-05   Mean   :0.2581   Mean   :0.376325  
##  3rd Qu.:25.870   3rd Qu.:5.5e-05   3rd Qu.:0.2807   3rd Qu.:0.473724  
##  Max.   :32.840   Max.   :7.8e-05   Max.   :0.3414   Max.   :1.034915  
##  NA's   :4        NA's   :4                                            
##       mka        
##  Min.   :0.2503  
##  1st Qu.:0.4308  
##  Median :0.5125  
##  Mean   :0.5204  
##  3rd Qu.:0.6095  
##  Max.   :0.9791  
## 
g2 <- g[-c(1:4),]
str(g2)
## 'data.frame':    64 obs. of  46 variables:
##  $ year: int  1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 ...
##  $ N   : num  2047 2120 2161 2205 2249 ...
##  $ E   : num  846 874 892 910 935 ...
##  $ L   : num  674430 688711 699984 706030 704023 ...
##  $ Y   : num  7574162 8217579 8535440 8851155 8996442 ...
##  $ Ye  : num  7667910 8314487 8643475 8952750 9124558 ...
##  $ W   : num  4620027 4954604 5190471 5366630 5436475 ...
##  $ C   : num  4961254 5339159 5528277 5722745 5824452 ...
##  $ K   : num  28542956 30570574 32027560 33548059 35012958 ...
##  $ Kf  : num  4.44 5 5.28 5.96 7.01 ...
##  $ yN  : num  3699 3875 3949 4014 4001 ...
##  $ yE  : num  8955 9401 9570 9731 9617 ...
##  $ yL  : num  11.2 11.9 12.2 12.5 12.8 ...
##  $ wN  : num  2257 2337 2401 2434 2418 ...
##  $ wE  : num  5462 5668 5819 5900 5812 ...
##  $ wL  : num  6.85 7.19 7.42 7.6 7.72 ...
##  $ cN  : num  2423 2518 2558 2595 2590 ...
##  $ cE  : num  5866 6108 6198 6291 6226 ...
##  $ cL  : num  7.36 7.75 7.9 8.11 8.27 ...
##  $ s   : num  0.639 0.659 0.644 0.649 0.655 ...
##  $ ss  : num  0.527 0.539 0.544 0.547 0.545 ...
##  $ h   : num  33746 34975 35908 36882 37429 ...
##  $ h0  : num  42321575 44388110 45754703 47516447 49732668 ...
##  $ hf  : num  0.961 1.009 1.017 1.111 1.29 ...
##  $ hf0 : num  6.58e-06 7.26e-06 7.54e-06 8.45e-06 9.96e-06 ...
##  $ ga  : num  0.265 0.269 0.267 0.264 0.257 ...
##  $ r   : num  0.103 0.107 0.104 0.104 0.102 ...
##  $ ka  : num  0.0915 0.0942 0.0939 0.0933 0.0906 ...
##  $ myN : num  3095 3200 3232 3318 3338 ...
##  $ myE : num  7284 7393 7377 7540 7702 ...
##  $ myL : num  2.81 2.9 2.94 3.06 3.16 ...
##  $ mwN : num  2081 2116 2246 2380 2312 ...
##  $ mwE : num  4898 4889 5127 5408 5334 ...
##  $ mwL : num  1.89 1.91 2.04 2.19 2.19 ...
##  $ mcN : num  2149 2480 2444 2283 2245 ...
##  $ mcE : num  5058 5731 5579 5189 5180 ...
##  $ mcL : num  1.95 2.24 2.22 2.11 2.13 ...
##  $ ms  : num  0.487 0.512 0.439 0.394 0.444 ...
##  $ mss : num  0.44 0.29 0.322 0.453 0.487 ...
##  $ mh  : num  32946 35330 37163 37747 37636 ...
##  $ mh0 : num  12726674 13837272 14805355 15319612 15464985 ...
##  $ mhf : num  5.61 5.74 5.68 5.65 5.66 ...
##  $ mhf0: num  1.06e-05 1.10e-05 1.16e-05 1.24e-05 1.24e-05 ...
##  $ mga : num  0.221 0.209 0.198 0.2 0.205 ...
##  $ mr  : num  0.487 0.512 0.439 0.394 0.444 ...
##  $ mka : num  0.44 0.29 0.322 0.453 0.487 ...
summary(g2)
##       year            N              E                L          
##  Min.   :1954   Min.   :2047   Min.   : 845.8   Min.   : 674430  
##  1st Qu.:1970   1st Qu.:3310   1st Qu.:1274.2   1st Qu.:1912544  
##  Median :1986   Median :4522   Median :1929.9   Median :3323487  
##  Mean   :1986   Mean   :4692   Mean   :2001.5   Mean   :3161366  
##  3rd Qu.:2001   3rd Qu.:6145   3rd Qu.:2682.3   3rd Qu.:4622993  
##  Max.   :2017   Max.   :7418   Max.   :3317.2   Max.   :5547437  
##        Y                   Ye                  W                  C           
##  Min.   :  7574162   Min.   :  7667910   Min.   : 4620027   Min.   : 4961254  
##  1st Qu.: 17498791   1st Qu.: 17725102   1st Qu.:10262766   1st Qu.:10474977  
##  Median : 30339788   Median : 30546609   Median :16927072   Median :18118810  
##  Mean   : 41588804   Mean   : 42031694   Mean   :22532307   Mean   :24325534  
##  3rd Qu.: 57716776   3rd Qu.: 58968195   3rd Qu.:32070586   3rd Qu.:34996781  
##  Max.   :111287146   Max.   :113833304   Max.   :57626665   Max.   :64250794  
##        K                   Kf                yN              yE       
##  Min.   : 28542956   Min.   :  4.439   Min.   : 3699   Min.   : 8955  
##  1st Qu.: 68386836   1st Qu.: 17.845   1st Qu.: 5285   1st Qu.:13729  
##  Median :140150863   Median : 45.168   Median : 6709   Median :16100  
##  Mean   :174033956   Mean   : 58.746   Mean   : 7790   Mean   :18275  
##  3rd Qu.:256390265   3rd Qu.: 88.905   3rd Qu.: 9392   3rd Qu.:21517  
##  Max.   :454990422   Max.   :169.109   Max.   :15003   Max.   :33548  
##        yL               wN             wE              wL        
##  Min.   : 7.829   Min.   :2257   Min.   : 5462   Min.   : 4.573  
##  1st Qu.: 9.365   1st Qu.:3100   1st Qu.: 8054   1st Qu.: 5.278  
##  Median :12.092   Median :3776   Median : 9114   Median : 6.922  
##  Mean   :12.948   Mean   :4283   Mean   :10068   Mean   : 7.229  
##  3rd Qu.:16.101   3rd Qu.:5219   3rd Qu.:11954   3rd Qu.: 8.651  
##  Max.   :20.574   Max.   :7769   Max.   :17372   Max.   :12.224  
##        cN             cE              cL               s         
##  Min.   :2423   Min.   : 5866   Min.   : 4.661   Min.   :0.6394  
##  1st Qu.:3165   1st Qu.: 8222   1st Qu.: 5.488   1st Qu.:0.7101  
##  Median :4007   Median : 9496   Median : 7.505   Median :0.7775  
##  Mean   :4595   Mean   :10792   Mean   : 7.731   Mean   :0.7870  
##  3rd Qu.:5695   3rd Qu.:13047   3rd Qu.: 9.429   3rd Qu.:0.8125  
##  Max.   :8662   Max.   :19369   Max.   :12.538   Max.   :0.9624  
##        ss               h                h0                 hf        
##  Min.   :0.5267   Min.   : 33746   Min.   :30537246   Min.   :0.9609  
##  1st Qu.:0.6377   1st Qu.: 53662   1st Qu.:42225431   1st Qu.:1.8031  
##  Median :0.6857   Median : 72616   Median :51666816   Median :2.5250  
##  Mean   :0.6760   Mean   : 76346   Mean   :53448367   Mean   :2.2911  
##  3rd Qu.:0.7152   3rd Qu.: 95584   3rd Qu.:63353765   3rd Qu.:2.7870  
##  Max.   :0.8056   Max.   :137159   Max.   :82018139   Max.   :2.9594  
##       hf0                  ga               r                 ka         
##  Min.   :6.582e-06   Min.   :0.2156   Min.   :0.09406   Min.   :0.08568  
##  1st Qu.:1.208e-05   1st Qu.:0.2232   1st Qu.:0.09920   1st Qu.:0.09015  
##  Median :1.370e-05   Median :0.2441   Median :0.10374   Median :0.09515  
##  Mean   :1.640e-05   Mean   :0.2409   Mean   :0.10566   Mean   :0.09684  
##  3rd Qu.:2.028e-05   3rd Qu.:0.2560   3rd Qu.:0.10665   3rd Qu.:0.10221  
##  Max.   :3.048e-05   Max.   :0.2688   Max.   :0.12934   Max.   :0.11767  
##       myN            myE             myL             mwN            mwE       
##  Min.   :2588   Min.   : 3939   Min.   :0.935   Min.   :1757   Min.   : 2690  
##  1st Qu.:3060   1st Qu.: 5219   1st Qu.:1.254   1st Qu.:2309   1st Qu.: 3904  
##  Median :3381   Median : 7480   Median :1.902   Median :2855   Median : 6607  
##  Mean   :4172   Mean   : 8678   Mean   :2.211   Mean   :3111   Mean   : 6494  
##  3rd Qu.:4683   3rd Qu.:10973   3rd Qu.:2.834   3rd Qu.:3215   3rd Qu.: 7585  
##  Max.   :8435   Max.   :17262   Max.   :4.899   Max.   :6328   Max.   :13197  
##       mwL              mcN            mcE             mcL        
##  Min.   :0.6589   Min.   :1722   Min.   : 2324   Min.   :0.5576  
##  1st Qu.:1.0305   1st Qu.:2051   1st Qu.: 3713   1st Qu.:0.8360  
##  Median :1.4038   Median :2299   Median : 5165   Median :1.3533  
##  Mean   :1.6252   Mean   :2764   Mean   : 5745   Mean   :1.4844  
##  3rd Qu.:1.9376   3rd Qu.:2870   3rd Qu.: 6791   3rd Qu.:1.9919  
##  Max.   :3.5155   Max.   :6104   Max.   :12492   Max.   :3.5453  
##        ms                mss               mh             mh0          
##  Min.   :0.004873   Min.   :0.2503   Min.   :11833   Min.   : 2955076  
##  1st Qu.:0.253170   1st Qu.:0.4292   1st Qu.:18823   1st Qu.: 5673981  
##  Median :0.361421   Median :0.5125   Median :35903   Median : 7264222  
##  Mean   :0.346822   Mean   :0.5210   Mean   :34332   Mean   : 8788920  
##  3rd Qu.:0.464258   3rd Qu.:0.6221   3rd Qu.:43747   3rd Qu.:11512297  
##  Max.   :0.635471   Max.   :0.9791   Max.   :65032   Max.   :18457130  
##       mhf              mhf0                mga               mr          
##  Min.   : 5.612   Min.   :1.062e-05   Min.   :0.1985   Min.   :0.004873  
##  1st Qu.:17.615   1st Qu.:1.529e-05   1st Qu.:0.2221   1st Qu.:0.253170  
##  Median :21.875   Median :2.715e-05   Median :0.2641   Median :0.361421  
##  Mean   :21.139   Mean   :3.488e-05   Mean   :0.2579   Mean   :0.346822  
##  3rd Qu.:25.870   3rd Qu.:5.455e-05   3rd Qu.:0.2816   3rd Qu.:0.464258  
##  Max.   :32.840   Max.   :7.814e-05   Max.   :0.3414   Max.   :0.635471  
##       mka        
##  Min.   :0.2503  
##  1st Qu.:0.4292  
##  Median :0.5125  
##  Mean   :0.5210  
##  3rd Qu.:0.6221  
##  Max.   :0.9791

3 Global view

The global aggregation of the primary variables offers a structural history of modern capitalist society in which each person and each unit of value, with equal weight regardless of country or year, appear as the basic units of observation.

The global standpoint recognizes that capital is a cosmopolitan or “transnational” social force that, in search of its own expansion, has historically shown little consideration for national, legal, ethical, or any other social norms, except those that, opposing social force to social force, the movement of the united and organized workers may impose on it.

The following plots offer a graphical summary of the contrast between the various measures of labor productivity (per capita, per worker, and per hour) and the corresponding measures of the real wage (per capita, per worker, and per hour):

# GLOBAL PLOTS
# PRODUCTIVITY, CLASS BALANCE OF FORCES
byN <- coef(lm(log(g$yN[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
bwN <- coef(lm(log(g$wN[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
bcN <- coef(lm(log(g$cN[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
bmyN <- coef(lm(log(g$myN[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
bmwN <- coef(lm(log(g$mwN[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
bmcN <- coef(lm(log(g$mcN[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
plot(g$year[-c(1:6)], g$yN[-c(1:6)], type="l", ylim=c(1000, 15000), 
     main="Global per-capita output, wage, and consumption", 
     xlab="Year", ylab="2011 USD", col="blue")
lines(g$year[-c(1:6)], g$wN[-c(1:6)], lty=2, col="blue")
lines(g$year[-c(1:6)], g$cN[-c(1:6)], lty=3, col="blue")
lines(g$year[-c(1:6)], g$myN[-c(1:6)], lty=1, col="red")
lines(g$year[-c(1:6)], g$mwN[-c(1:6)], lty=2, col="red")
lines(g$year[-c(1:6)], g$mcN[-c(1:6)], lty=3, col="red")
mtext(bquote(hat(y[N]) ==.(round(byN, 3))~"  "~ 
               hat(w[N]) ==.(round(bwN, 3))~"  "~ 
               hat(c[N]) ==.(round(bcN, 3))~"  "~ 
               tilde(y[N]) ==.(round(bmyN, 3))~"  "~ 
               tilde(w[N]) ==.(round(bmwN, 3))~"  "~ 
               tilde(c[N]) ==.(round(bmcN, 3))))
legend("topleft", bty="n", lty=c(1, 2, 3, 1, 2, 3), 
       col=c("blue", "blue", "blue", "red", "red", "red"),
       c(expression(paste(y[N]), paste(w[N]), paste(c[N])), expression(paste(tilde(y[N])), paste(tilde(w[N])), paste(tilde(c[N])))))

# trend cN > trend wN and smoother: financialization, smoothing.
# The early 1980s. Oil, debt crisis. Volcker.
# This suggests that finacialization (divorcing W from C)
# has been very unequal, as the medians are flipped

byE <- coef(lm(log(g$yE[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
bwE <- coef(lm(log(g$wE[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
bcE <- coef(lm(log(g$cE[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
plot(g$year[-c(1:6)], g$yE[-c(1:6)], type="l", ylim=c(5000, 35000), 
     main="Global per-worker output, wage, and consumption", 
     xlab="Year", ylab="2011 USD")
lines(g$year[-c(1:6)], g$wE[-c(1:6)], lty=2)
lines(g$year[-c(1:6)], g$cE[-c(1:6)], lty=3)
mtext(bquote(hat(y[E]) ==.(round(byE, 4))~"  "~ hat(w[E]) ==.(round(bwE, 4))~"  "~ hat(c[E]) ==.(round(bcE, 4))))
legend("topleft", bty="n", lty=c(1, 2, 3), c(expression(paste(y[E]), paste(w[E]), paste(c[E]))))

# Again: the early 1980s.

byL <- coef(lm(log(g$yL[-c(1:26)]) ~ g$year[-c(1:26)]))[2]
bwL <- coef(lm(log(g$wL[-c(1:26)]) ~ g$year[-c(1:26)]))[2]
bcL <- coef(lm(log(g$cL[-c(1:26)]) ~ g$year[-c(1:26)]))[2]
plot(g$year[-c(1:26)], g$yL[-c(1:26)], type="l", ylim=c(3, 20), 
     main="Global per-hour output, wage, and consumption", 
     xlab="Year", ylab="2011 USD")
lines(g$year[-c(1:26)], g$wL[-c(1:26)], lty=2)
lines(g$year[-c(1:26)], g$cL[-c(1:26)], lty=3)
mtext(bquote(hat(y[L])  ==.(round(byL, 4))~"  "~ hat(w[L])  ==.(round(bwL, 4))~"  "~ hat(c[L])  ==.(round(bcL, 4))))
legend("topleft", bty="n", lty=c(1, 2, 3), c(expression(paste(y[L]), paste(w[L]), paste(c[L]))))

# The data before 1971 is no good. 
# Early 1980s: stagnation. Bump in 1989 (Soviet Union?).
# Increase in inequality most signif in the 2000s.

bs <- coef(lm(log(g$s[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
bss <- coef(lm(log(g$ss[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
plot(g$year[-c(1:6)], g$s[-c(1:6)], type="l", ylim=c(0.4, 1),
     main="Global exploitation rates", 
     xlab="Year", ylab="2011 USD")
lines(g$year[-c(1:6)], g$ss[-c(1:6)], lty=2)
mtext(bquote(hat(sigma)  ==.(round(bs, 4))~"  "~ hat(sigma[e]) ==.(round(bss, 4))))
legend("topleft", bty="n", lty=c(1, 2), c(expression(paste(sigma), paste(sigma[e] ))))

# Starting in the 1990s, there's a departure: financialization.
# Gap contracts in late 1960s: definancialization?  
# Both increase, but less so sigma_e.
# Again: the big increase in sigma in the 2000s!
# Financialization gap expands in the 1990s. Why? 
# Crises in Asia.

These plots show the various measures of the capital composition as well as the output-capital ratio:

# PROFITABILITY
bh <- coef(lm(log(g$h[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
bh0 <- coef(lm(log(g$h0[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
par(mar=c(4, 4, 4, 5) + 0.2)
plot(g$year[-c(1:6)], g$h[-c(1:6)], ylim=c(2e+4, 1.4e+5), axes=FALSE, 
     xlab="Year", ylab="", 
     type="l", main="Global (stock) capital compositions")
axis(2, ylim=c(2e+4, 1.4e+5), col="black")  ## las=1 makes horizontal labels
mtext(bquote(h), side=2, line= 2)
box()
par(new=TRUE)
plot(g$year[-c(1:26)], g$h0[-c(1:26)], xlab="", ylab="", ylim=c(3e+7, 8.5e+7), 
     axes=FALSE, col="black", type="l", lty=2)
mtext(expression(paste(h[0])), side=4, line=2) 
axis(4, ylim=c(3e+7, 8.5e+7), las=3)
axis(1,pretty(range(g$year[-c(1:26)]), 10))
mtext(bquote(hat(h)  ==.(round(bh, 4))~"  "~ hat(h[0]) ==.(round(bh0, 4))))
legend("topleft", bty="n", legend=c(expression(paste(h)), expression(paste(h[0]))),
       lty=c(1, 2))

# h=2011 $/worker, h[0]=2011 $/hour
# Mind the NAs
# h[0] almost doubled (mind the NAs)
# h multiplied by 4+: mechanization/automation

bhf <- coef(lm(log(g$hf[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
bhf0 <- coef(lm(log(g$hf0[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
par(mar=c(4, 4, 4, 5) + 0.2)
plot(g$year[-c(1:6)], g$hf[-c(1:6)], ylim=c(.7, 3.2), axes=FALSE, 
     xlab="Year", ylab="", 
     type="l", main="Global (flow) capital compositions")
axis(2, ylim=c(0, 3.2), col="black")  ## las=1 makes horizontal labels
mtext(bquote(h[f]), side=2, line= 2)
box()
par(new=TRUE)
plot(g$year[-c(1:26)], g$hf0[-c(1:26)], xlab="", ylab="", ylim=c(1e-5, 3.2e-5), 
     axes=FALSE, col="black", type="l", lty=2)
mtext(expression(paste(h[0])), side=4, line=2) 
axis(4, ylim=c(0, 3.2e-5), las=3)
axis(1,pretty(range(g$year[-c(1:26)]), 10))
mtext(bquote(hat(h[f]) ==.(round(bhf, 4))~"  "~ hat(h[f0]) ==.(round(bhf0, 4))))
legend("topleft", bty="n", legend=c(expression(paste(h[f])), expression(paste(h[f0]))),
       lty=c(1, 2))

# h[f]=flow of 2011 $/worker.  h[f0]=flow of 2011 $/hour (NAs)
# The gap in the 1975-2010 period is related to neoliberalism:
# the period in which per-hour real wages shrunk. 
# h_f = K_s/W vs. h_f0 = K_s/L

bga <- coef(lm(log(g$ga[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
plot(g$year[-c(1:6)], g$ga[-c(1:6)], type="l", 
     main="Global output-capital ratio", 
     xlab="Year", ylab=expression(paste(gamma)))
mtext(bquote(hat(gamma) ==.(round(bga, 4))))

# Max profit rate gone down in the period
# Ceiling of the profit rate: dropped from the 1970s.
# Stagnated near .22 until early 2000s.
# Rapid increase in the 2000s, then Great Recession.

br <- coef(lm(log(g$r[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
bka <- coef(lm(log(g$ka[-c(1:6)]) ~ g$year[-c(1:6)]))[2]
plot(g$year[-c(1:6)], g$r[-c(1:6)], type="l", ylim=c(0.08, .13),
     main="Global profit rates", 
     xlab="Year", ylab=" ")
lines(g$year[-c(1:6)], g$ka[-c(1:6)], lty=2)
mtext(bquote(hat(r) ==.(round(br, 4))~"  "~ hat(kappa) ==.(round(bka, 4))))
legend("topleft", bty="n", lty=c(1, 2), c(expression(paste(r), paste(kappa))))

# Significant increase in capital's profitability in the 2000s.
# Neoliberal globalization.
# Largely stagnant near 11% p.a.

4 International output-weighted view

The international output-weighted perspective recognizes that the constitution of national states establishes a highly uneven legal, political, cultural, and overall superstructural landscape that capital must navigate as it pursues its own expansion. However, population and capital as a global economic force is still sufficiently large to permit richer countries to bend outcomes in their favor regardless of the size of their respective populations.

# INTERNATIONAL ECONOMIC-WEIGHTED (BY Y)
# Multi plot function:
# The input of the function MUST be a numeric list
plot.multi.dens <- function(s)
{
  junk.x = NULL
  junk.y = NULL
  for(i in 1:length(s))
  {
    junk.x = c(junk.x, density(s[[i]])$x)
    junk.y = c(junk.y, density(s[[i]])$y)
  }
  xr <- range(junk.x)
  yr <- range(junk.y)
  plot(density(s[[1]]), xlim = xr, ylim = yr, main = "", xlab = "")
  for(i in 1:length(s))
  {
    lines(density(s[[i]]), xlim = xr, ylim = yr, lty=i)
  }
}

x3 <- x %>% 
  group_by(year) %>% 
  mutate(Yweight = Y/sum(Y, na.rm = TRUE))
str(x3)
## Classes 'grouped_df', 'tbl_df', 'tbl' and 'data.frame':  12376 obs. of  35 variables:
##  $ countrycode: chr  "ABW" "ABW" "ABW" "ABW" ...
##  $ year       : num  1950 1951 1952 1953 1954 ...
##  $ c          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ Y          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ Ye         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ om         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ l          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ Kf         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ W          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ C          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ K          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ N          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ E          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ L          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ A          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ rr         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ yN         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ yE         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ yL         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ wN         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ wE         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ wL         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ cN         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ cE         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ cL         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ s          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ ss         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ h          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ h0         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ hf         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ hf0        : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ ga         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ r          : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ ka         : num  NA NA NA NA NA NA NA NA NA NA ...
##  $ Yweight    : num  NA NA NA NA NA NA NA NA NA NA ...
##  - attr(*, "groups")=Classes 'tbl_df', 'tbl' and 'data.frame':   68 obs. of  2 variables:
##   ..$ year : num  1950 1951 1952 1953 1954 ...
##   ..$ .rows:List of 68
##   .. ..$ : int  1 69 137 205 273 341 409 477 545 613 ...
##   .. ..$ : int  2 70 138 206 274 342 410 478 546 614 ...
##   .. ..$ : int  3 71 139 207 275 343 411 479 547 615 ...
##   .. ..$ : int  4 72 140 208 276 344 412 480 548 616 ...
##   .. ..$ : int  5 73 141 209 277 345 413 481 549 617 ...
##   .. ..$ : int  6 74 142 210 278 346 414 482 550 618 ...
##   .. ..$ : int  7 75 143 211 279 347 415 483 551 619 ...
##   .. ..$ : int  8 76 144 212 280 348 416 484 552 620 ...
##   .. ..$ : int  9 77 145 213 281 349 417 485 553 621 ...
##   .. ..$ : int  10 78 146 214 282 350 418 486 554 622 ...
##   .. ..$ : int  11 79 147 215 283 351 419 487 555 623 ...
##   .. ..$ : int  12 80 148 216 284 352 420 488 556 624 ...
##   .. ..$ : int  13 81 149 217 285 353 421 489 557 625 ...
##   .. ..$ : int  14 82 150 218 286 354 422 490 558 626 ...
##   .. ..$ : int  15 83 151 219 287 355 423 491 559 627 ...
##   .. ..$ : int  16 84 152 220 288 356 424 492 560 628 ...
##   .. ..$ : int  17 85 153 221 289 357 425 493 561 629 ...
##   .. ..$ : int  18 86 154 222 290 358 426 494 562 630 ...
##   .. ..$ : int  19 87 155 223 291 359 427 495 563 631 ...
##   .. ..$ : int  20 88 156 224 292 360 428 496 564 632 ...
##   .. ..$ : int  21 89 157 225 293 361 429 497 565 633 ...
##   .. ..$ : int  22 90 158 226 294 362 430 498 566 634 ...
##   .. ..$ : int  23 91 159 227 295 363 431 499 567 635 ...
##   .. ..$ : int  24 92 160 228 296 364 432 500 568 636 ...
##   .. ..$ : int  25 93 161 229 297 365 433 501 569 637 ...
##   .. ..$ : int  26 94 162 230 298 366 434 502 570 638 ...
##   .. ..$ : int  27 95 163 231 299 367 435 503 571 639 ...
##   .. ..$ : int  28 96 164 232 300 368 436 504 572 640 ...
##   .. ..$ : int  29 97 165 233 301 369 437 505 573 641 ...
##   .. ..$ : int  30 98 166 234 302 370 438 506 574 642 ...
##   .. ..$ : int  31 99 167 235 303 371 439 507 575 643 ...
##   .. ..$ : int  32 100 168 236 304 372 440 508 576 644 ...
##   .. ..$ : int  33 101 169 237 305 373 441 509 577 645 ...
##   .. ..$ : int  34 102 170 238 306 374 442 510 578 646 ...
##   .. ..$ : int  35 103 171 239 307 375 443 511 579 647 ...
##   .. ..$ : int  36 104 172 240 308 376 444 512 580 648 ...
##   .. ..$ : int  37 105 173 241 309 377 445 513 581 649 ...
##   .. ..$ : int  38 106 174 242 310 378 446 514 582 650 ...
##   .. ..$ : int  39 107 175 243 311 379 447 515 583 651 ...
##   .. ..$ : int  40 108 176 244 312 380 448 516 584 652 ...
##   .. ..$ : int  41 109 177 245 313 381 449 517 585 653 ...
##   .. ..$ : int  42 110 178 246 314 382 450 518 586 654 ...
##   .. ..$ : int  43 111 179 247 315 383 451 519 587 655 ...
##   .. ..$ : int  44 112 180 248 316 384 452 520 588 656 ...
##   .. ..$ : int  45 113 181 249 317 385 453 521 589 657 ...
##   .. ..$ : int  46 114 182 250 318 386 454 522 590 658 ...
##   .. ..$ : int  47 115 183 251 319 387 455 523 591 659 ...
##   .. ..$ : int  48 116 184 252 320 388 456 524 592 660 ...
##   .. ..$ : int  49 117 185 253 321 389 457 525 593 661 ...
##   .. ..$ : int  50 118 186 254 322 390 458 526 594 662 ...
##   .. ..$ : int  51 119 187 255 323 391 459 527 595 663 ...
##   .. ..$ : int  52 120 188 256 324 392 460 528 596 664 ...
##   .. ..$ : int  53 121 189 257 325 393 461 529 597 665 ...
##   .. ..$ : int  54 122 190 258 326 394 462 530 598 666 ...
##   .. ..$ : int  55 123 191 259 327 395 463 531 599 667 ...
##   .. ..$ : int  56 124 192 260 328 396 464 532 600 668 ...
##   .. ..$ : int  57 125 193 261 329 397 465 533 601 669 ...
##   .. ..$ : int  58 126 194 262 330 398 466 534 602 670 ...
##   .. ..$ : int  59 127 195 263 331 399 467 535 603 671 ...
##   .. ..$ : int  60 128 196 264 332 400 468 536 604 672 ...
##   .. ..$ : int  61 129 197 265 333 401 469 537 605 673 ...
##   .. ..$ : int  62 130 198 266 334 402 470 538 606 674 ...
##   .. ..$ : int  63 131 199 267 335 403 471 539 607 675 ...
##   .. ..$ : int  64 132 200 268 336 404 472 540 608 676 ...
##   .. ..$ : int  65 133 201 269 337 405 473 541 609 677 ...
##   .. ..$ : int  66 134 202 270 338 406 474 542 610 678 ...
##   .. ..$ : int  67 135 203 271 339 407 475 543 611 679 ...
##   .. ..$ : int  68 136 204 272 340 408 476 544 612 680 ...
##   ..- attr(*, ".drop")= logi TRUE
summary(x3)
##  countrycode             year            c                Y           
##  Length:12376       Min.   :1950   Min.   :0.0256   Min.   :      20  
##  Class :character   1st Qu.:1967   1st Qu.:0.5332   1st Qu.:    6381  
##  Mode  :character   Median :1984   Median :0.6305   Median :   27106  
##                     Mean   :1984   Mean   :0.6249   Mean   :  269193  
##                     3rd Qu.:2000   3rd Qu.:0.7373   3rd Qu.:  137473  
##                     Max.   :2017   Max.   :0.9998   Max.   :18383838  
##                                    NA's   :2646     NA's   :2391      
##        Ye                 om              l              Kf       
##  Min.   :      18   Min.   :0.090   Min.   :1354   Min.   :0.008  
##  1st Qu.:    6178   1st Qu.:0.446   1st Qu.:1799   1st Qu.:0.210  
##  Median :   27259   Median :0.545   Median :1972   Median :0.478  
##  Mean   :  272057   Mean   :0.533   Mean   :1984   Mean   :0.534  
##  3rd Qu.:  138656   3rd Qu.:0.624   3rd Qu.:2150   3rd Qu.:0.829  
##  Max.   :18396068   Max.   :0.900   Max.   :2911   Max.   :3.034  
##  NA's   :2391       NA's   :4341    NA's   :9003   NA's   :5329   
##        W                  C                  K                  N            
##  Min.   :      18   Min.   :      11   Min.   :      16   Min.   :   0.0044  
##  1st Qu.:    4932   1st Qu.:    4219   1st Qu.:   20008   1st Qu.:   1.6345  
##  Median :   18927   Median :   17246   Median :  103665   Median :   6.1154  
##  Mean   :  191852   Mean   :  161781   Mean   : 1128533   Mean   :  30.7368  
##  3rd Qu.:  100229   3rd Qu.:   79777   3rd Qu.:  601539   3rd Qu.:  19.8915  
##  Max.   :10720879   Max.   :13076158   Max.   :94903728   Max.   :1409.5175  
##  NA's   :4776       NA's   :2646       NA's   :2417       NA's   :2391       
##        E                 L                 A               rr       
##  Min.   :  0.001   Min.   :     89   Min.   :0.234   Min.   :0.010  
##  1st Qu.:  0.940   1st Qu.:   5431   1st Qu.:0.853   1st Qu.:0.066  
##  Median :  3.021   Median :  11989   Median :0.982   Median :0.110  
##  Mean   : 14.799   Mean   :  60746   Mean   :0.994   Mean   :0.136  
##  3rd Qu.:  8.583   3rd Qu.:  44254   3rd Qu.:1.059   3rd Qu.:0.177  
##  Max.   :792.575   Max.   :1723336   Max.   :7.107   Max.   :1.060  
##  NA's   :3535      NA's   :9003      NA's   :6370    NA's   :4789   
##        yN                 yE                  yL                wN          
##  Min.   :   131.3   Min.   :    485.8   Min.   :  0.582   Min.   :    59.7  
##  1st Qu.:  2288.1   1st Qu.:   7232.0   1st Qu.:  7.441   1st Qu.:  1330.9  
##  Median :  5705.5   Median :  17967.4   Median : 16.455   Median :  3278.2  
##  Mean   : 12936.7   Mean   :  29436.3   Mean   : 20.385   Mean   :  6642.0  
##  3rd Qu.: 14579.9   3rd Qu.:  38315.2   3rd Qu.: 29.727   3rd Qu.:  7518.9  
##  Max.   :792461.3   Max.   :1343051.6   Max.   :109.772   Max.   :325926.0  
##  NA's   :2391       NA's   :3535        NA's   :9003      NA's   :4776      
##        wE                 wL               cN                  cE          
##  Min.   :   220.9   Min.   : 0.342   Min.   :     0.41   Min.   :     2.2  
##  1st Qu.:  4463.8   1st Qu.: 4.128   1st Qu.:   654.50   1st Qu.:  2114.9  
##  Median :  9756.6   Median : 7.706   Median :  2006.61   Median :  6354.8  
##  Mean   : 15252.5   Mean   : 9.325   Mean   :  5736.93   Mean   : 13754.2  
##  3rd Qu.: 19563.1   3rd Qu.:12.696   3rd Qu.:  6308.26   3rd Qu.: 16542.0  
##  Max.   :552374.5   Max.   :66.553   Max.   :290844.78   Max.   :545323.2  
##  NA's   :5399       NA's   :9237     NA's   :2646        NA's   :3744      
##        cL               s                ss                h            
##  Min.   : 0.011   Min.   : 0.111   Min.   : 0.0002   Min.   :    335.4  
##  1st Qu.: 2.453   1st Qu.: 0.602   1st Qu.: 0.3563   1st Qu.:  24256.0  
##  Median : 6.727   Median : 0.834   Median : 0.5862   Median :  78472.0  
##  Mean   : 8.755   Mean   : 1.026   Mean   : 0.8127   Mean   : 129672.7  
##  3rd Qu.:12.502   3rd Qu.: 1.242   3rd Qu.: 0.8755   3rd Qu.: 187028.6  
##  Max.   :75.792   Max.   :10.154   Max.   :38.1371   Max.   :2341371.5  
##  NA's   :9007     NA's   :4341     NA's   :2646      NA's   :3542       
##        h0                hf                hf0                 ga         
##  Min.   :  0.225   Min.   :   0.020   Min.   :   0.029   Min.   : 0.0204  
##  1st Qu.: 32.193   1st Qu.:   4.045   1st Qu.:  10.260   1st Qu.: 0.1757  
##  Median : 77.046   Median :  17.627   Median :  29.475   Median : 0.2569  
##  Mean   :100.344   Mean   : 103.742   Mean   : 181.398   Mean   : 0.3730  
##  3rd Qu.:151.378   3rd Qu.:  80.228   3rd Qu.: 111.643   3rd Qu.: 0.3702  
##  Max.   :356.615   Max.   :4974.896   Max.   :4137.318   Max.   :11.6016  
##  NA's   :9003      NA's   :5329       NA's   :9368       NA's   :2417     
##        r               ka            Yweight      
##  Min.   :0.009   Min.   :0.0002   Min.   :0.0000  
##  1st Qu.:0.073   1st Qu.:0.0591   1st Qu.:0.0002  
##  Median :0.109   Median :0.0863   Median :0.0007  
##  Mean   :0.153   Mean   :0.1293   Mean   :0.0068  
##  3rd Qu.:0.166   3rd Qu.:0.1311   3rd Qu.:0.0040  
##  Max.   :2.391   Max.   :4.7978   Max.   :0.3994  
##  NA's   :4789    NA's   :2668     NA's   :2391
head(x3$Yweight)
## [1] NA NA NA NA NA NA
str(x3$Yweight)
##  num [1:12376] NA NA NA NA NA NA NA NA NA NA ...
summary(x3$Yweight)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##  0.0000  0.0002  0.0007  0.0068  0.0040  0.3994    2391
Yweight75 <- na.omit(x3$Yweight[ which(x3$year==1975, )])
Yweight95 <- na.omit(x3$Yweight[ which(x3$year==1995, )])
Yweight15 <- na.omit(x3$Yweight[ which(x3$year==2015, )])

lYweight75 <- na.omit(log(x3$Yweight[ which(x3$year==1975, )]))
lYweight95 <- na.omit(log(x3$Yweight[ which(x3$year==1995, )]))
lYweight15 <- na.omit(log(x3$Yweight[ which(x3$year==2015, )]))

plot.multi.dens(list(Yweight75,Yweight95,Yweight15))
title(main = expression(paste("Density of country output shares: ", alpha[i])))
legend("topright", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

# This is the economic basis for imperialism
# This distribution is the same as the distribution of Y for a given year
# rescaling it to 0-1.

plot.multi.dens(list(lYweight75, lYweight95, lYweight15))
title(main = expression(paste("Density of country output shares: ", log(alpha[i]))))
legend("topright", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

# Basically, no change in distribution. A little flattening of the middle bump.

5 International unweighted view

The importance of describing and analyzing the unweighted international structural proportions, which grant each country with the same weight in the international mean, hinges on taking account each country’s

The phenomenon of imperialism and the overall importance that international relations play in human lives testifies to the fact that the legal existence of national states is not merely formal, a legal fiction, but is of enormous consequence.

The subsequent analysis seeks to empirically characterize

The following density plots show the international distribution of the structural parameters in selected years: 1975, 1995, and 2015:

# INTERNATIONAL UNWEIGHTED
# DISTRIBUTION OF THE STRUCTURAL PROPORTIONS 1975, 1995, 2015
yN75<-log(na.omit(subset(x$yN, x$year==1975)))
yN95<-log(na.omit(subset(x$yN, x$year==1995)))
yN15<-log(na.omit(subset(x$yN, x$year==2015)))

yE75<-log(na.omit(subset(x$yE, x$year==1975)))
yE95<-log(na.omit(subset(x$yE, x$year==1995)))
yE15<-log(na.omit(subset(x$yE, x$year==2015)))

yL75<-log(na.omit(subset(x$yL, x$year==1975)))
yL95<-log(na.omit(subset(x$yL, x$year==1995)))
yL15<-log(na.omit(subset(x$yL, x$year==2015)))

A75<-log(na.omit(subset(x$A, x$year==1975)))
A95<-log(na.omit(subset(x$A, x$year==1995)))
A15<-log(na.omit(subset(x$A, x$year==2015)))

wN75<-log(na.omit(subset(x$wN, x$year==1975)))
wN95<-log(na.omit(subset(x$wN, x$year==1995)))
wN15<-log(na.omit(subset(x$wN, x$year==2015)))

wE75<-log(na.omit(subset(x$wE, x$year==1975)))
wE95<-log(na.omit(subset(x$wE, x$year==1995)))
wE15<-log(na.omit(subset(x$wE, x$year==2015)))

wL75<-log(na.omit(subset(x$wL, x$year==1975)))
wL95<-log(na.omit(subset(x$wL, x$year==1995)))
wL15<-log(na.omit(subset(x$wL, x$year==2015)))

cN75<-log(na.omit(subset(x$cN, x$year==1975)))
cN95<-log(na.omit(subset(x$cN, x$year==1995)))
cN15<-log(na.omit(subset(x$cN, x$year==2015)))

cE75<-log(na.omit(subset(x$cE, x$year==1975)))
cE95<-log(na.omit(subset(x$cE, x$year==1995)))
cE15<-log(na.omit(subset(x$cE, x$year==2015)))

cL75<-log(na.omit(subset(x$cL, x$year==1975)))
cL95<-log(na.omit(subset(x$cL, x$year==1995)))
cL15<-log(na.omit(subset(x$cL, x$year==2015)))

s75<- log(na.omit(subset(x$s, x$year==1975)))
s95<- log(na.omit(subset(x$s, x$year==1995)))
s15<- log(na.omit(subset(x$s, x$year==2015)))

ss75<-log(na.omit(subset(x$ss, x$year==1975)))
ss95<-log(na.omit(subset(x$ss, x$year==1995)))
ss15<-log(na.omit(subset(x$ss, x$year==2015)))

h75<-log(na.omit(subset(x$h, x$year==1975)))
h95<-log(na.omit(subset(x$h, x$year==1995)))
h15<-log(na.omit(subset(x$h, x$year==2015)))

h075<-log(na.omit(subset(x$h0, x$year==1975)))
h095<-log(na.omit(subset(x$h0, x$year==1995)))
h015<-log(na.omit(subset(x$h0, x$year==2015)))

hf75<-log(na.omit(subset(x$hf, x$year==1975)))
hf95<-log(na.omit(subset(x$hf, x$year==1995)))
hf15<-log(na.omit(subset(x$hf, x$year==2015)))

hf075<-log(na.omit(subset(x$hf0, x$year==1975)))
hf095<-log(na.omit(subset(x$hf0, x$year==1995)))
hf015<-log(na.omit(subset(x$hf0, x$year==2015)))

ga75<-log(na.omit(subset(x$ga, x$year==1975)))
ga95<-log(na.omit(subset(x$ga, x$year==1995)))
ga15<-log(na.omit(subset(x$ga, x$year==2015)))

r75<-log(na.omit(subset(x$r, x$year==1975)))
r95<-log(na.omit(subset(x$r, x$year==1995)))
r15<-log(na.omit(subset(x$r, x$year==2015)))

ka75<-log(na.omit(subset(x$ka, x$year==1975)))
ka95<-log(na.omit(subset(x$ka, x$year==1995)))
ka15<-log(na.omit(subset(x$ka, x$year==2015)))

rr75<-log(na.omit(subset(x$rr, x$year==1975)))
rr95<-log(na.omit(subset(x$rr, x$year==1995)))
rr15<-log(na.omit(subset(x$rr, x$year==2015)))


# Multi plot function:
# The input of the function MUST be a numeric list
plot.multi.dens <- function(s)
{
        junk.x = NULL
        junk.y = NULL
        for(i in 1:length(s))
        {
                junk.x = c(junk.x, density(s[[i]])$x)
                junk.y = c(junk.y, density(s[[i]])$y)
        }
        xr <- range(junk.x)
        yr <- range(junk.y)
        plot(density(s[[1]]), xlim = xr, ylim = yr, main = "", xlab = "")
        for(i in 1:length(s))
        {
                lines(density(s[[i]]), xlim = xr, ylim = yr, lty=i)
        }
}

library(Hmisc)
# Density plots:
plot.multi.dens(list(yN75,yN95,yN15))
title(main = expression(paste("Density of ", log(y[N]))))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(yE75,yE95,yE15))
title(main = expression(paste("Density of ", log(y[E]))))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(yL75,yL95,yL15))
title(main = expression(paste("Density of ", log(y[L]))))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(A75, A95, A15))
title(main = expression(paste("Density of ", log(A))))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(wN75,wN95,wN15))
title(main = expression(paste("Density of ", log(w[N]))))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(wE75,wE95,wE15))
title(main = expression(paste("Density of ", log(w[E]))))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(wL75,wL95,wL15))
title(main = expression(paste("Density of ", log(w[L]))))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(cN75,cN95,cN15))
title(main = expression(paste("Density of ", log(c[N]))))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(cE75,cE95,cE15))
title(main = expression(paste("Density of ", log(c[E]))))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(cL75,cL95,cL15))
title(main = expression(paste("Density of ", log(c[L]))))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(s75,s95,s15))
title(main = expression(paste("Density of ", sigma)))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(ss75,ss95,ss15))
title(main = expression(paste("Density of ", sigma[e])))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(h75,h95,h15))
title(main = expression(paste("Density of ", h)))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(h075,h095,h015))
title(main = expression(paste("Density of ", h[0])))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(hf75,hf95,hf15))
title(main = expression(paste("Density of ", h[f])))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(hf075,hf095,hf015))
title(main = expression(paste("Density of ", h[f0])))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(ga75,ga95,ga15))
title(main = expression(paste("Density of ", gamma)))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(r75,r95,r15))
title(main = expression(paste("Density of ", r)))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(ka75,ka95,ka15))
title(main = expression(paste("Density of ", kappa)))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

plot.multi.dens(list(rr75, rr95, rr15))
title(main = expression(paste("Density of ", r[r])))
legend("topleft", bty="n", legend=c("1975","1995","2015"), lty =(1:3))

# Note what happens to these distributions. 
# r_r: Marx's story: the most developed show the future.

Under current international law, national states are endowed with formal political sovereignity. History shows that the weight of the juridical figure is relative in terms of effective international relations. As a first approximation to the characterization of the deep international structures of postwar global capitalist society, one must consider the time-series features of plain unweighted aggregates (means, standard errors of means, medians, etc.) of the primary variables (those with people and value flows as measurement units), and their result structural ratios.

The following plots provide a graphical summary of the evolution of these unweighted aggregates, as well as their resulting structural parameters, over the 1971-2017 period. Let a primary variable for a country \(i\) and a year \(t\) be denoted as \(X_{it}\). Then the mean of this variable across all countries in year \(t\) is denoted as \(\bar{X}_t.\) The time mean of this variable is then denoted as \(\bar{X}^T \equiv \sum_{i=1}^T\) where \(T\) is the length of the time-series sample. Similarly, the cross-country median of the variable is denoted as \(\tilde{X}_t\) and its time mean as \(\tilde{X}^T\). In general, the superscript \(T\) denotes a time mean of the corresponding variable. The geometric mean of the annual growth rate of any variable \(X\) over the period is denoted as \(\hat{X}\). Confidence intervals around the cross-country mean of a variable (in year \(t\), not indicated) are constructed as \([\bar{X} \pm 2 \ \text{se}(\bar{X})]\), where \(\text{se}(\bar{X}) = \bar{X}/\sqrt{n}\), where \(n\) is the length of the country sample in that particular year.

library(plotrix)
## Warning: package 'plotrix' was built under R version 3.6.3
iyN <- tapply(x$yN, x$year, mean, na.rm=TRUE)
summary(iyN)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    4254    5134   13294   11751   14307   19152
biyN <- coef(lm(log(iyN[c(20:64)]) ~ year[c(20:64)]))[2]
seiyN <- tapply(x$yN, x$year, std.error, na.rm=TRUE)
miyN <- tapply(x$yN, x$year, median, na.rm=TRUE)
ciH <- iyN + 2*seiyN
ciL <- iyN - 2*seiyN
plot(year[c(20:64)], iyN[c(20:64)], type="l", lty=0, 
     main=expression(paste("Mean (95% CI) and median of per-capita output ", y[N])), 
     xlab="Year", ylab="2011 USD/capita", ylim=c(4000, 25000), sub = "Data: PWT")
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col="gray90", border=NA)
lines(year[c(20:64)], iyN[c(20:64)], lty=1)
lines(year[c(20:64)], miyN[c(20:64)], lty=2)
legend("top", bty="n", 
       legend=c(expression(paste(bar(y[N]))), expression(paste(tilde(y[N])))), 
       lty =c(1,2))
mtext(bquote(bar(y[N])^T  == .(round(mean(iyN[c(20:64)]), 1))~ "
             "~se(bar(y[N]))^T ==.(round(mean(seiyN[c(20:64)]), 1))~" 
             "~tilde(y[N])^T  == .(round(mean(miyN[c(20:64)]), 1))~" 
             "~hat(bar(y[N]))  ==.(round(biyN, 4))))

iyE <- tapply(x$yE, x$year, mean, na.rm=TRUE)
summary(iyE)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   12059   16575   29376   26776   31912   42156
biyE <- coef(lm(log(iyE[c(20:64)]) ~ year[c(20:64)]))[2]
seiyE <- tapply(x$yE, x$year, std.error, na.rm=TRUE)
miyE <- tapply(x$yE, x$year, median, na.rm=TRUE)
ciH <- iyE + 2*seiyE
ciL <- iyE - 2*seiyE
plot(year[c(20:64)], iyE[c(20:64)], type="l", lty=0, 
     main=expression(paste("Mean (95% CI) and median of per-worker output ", y[E])), 
     xlab="Year", ylab="2011 USD/worker", ylim=c(0, 55000), sub = "Data: PWT")
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col="gray90", border=NA)
lines(year[c(20:64)], iyE[c(20:64)], lty=1)
lines(year[c(20:64)], miyN[c(20:64)], lty=2)
legend("top", bty="n", 
       legend=c(expression(paste(bar(y[E]))), expression(paste(tilde(y[E])))), 
       lty =c(1,2))
mtext(bquote(bar(y[E])^T  == .(round(mean(iyE[c(20:64)]), 1))~ "
             "~se(bar(y[E]))^T ==.(round(mean(seiyE[c(20:64)]), 1))~" 
             "~tilde(y[E])^T  == .(round(mean(miyE[c(20:64)]), 1))~" 
             "~hat(bar(y[E]))  ==.(round(biyE, 4))))

iyL <- tapply(x$yL, x$year, mean, na.rm=TRUE)
summary(iyL)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   7.003  11.976  16.684  18.226  23.401  34.646
biyL <- coef(lm(log(iyL[c(20:64)]) ~ year[c(20:64)]))[2]
seiyL <- tapply(x$yL, x$year, std.error, na.rm=TRUE)
miyL <- tapply(x$yL, x$year, median, na.rm=TRUE)
ciH <- iyL + 2*seiyL
ciL <- iyL - 2*seiyL
plot(year[c(20:64)], iyL[c(20:64)], type="l", lty=0, 
     main=expression(paste("Mean (95% CI) and median of per-hour output ", y[L])), 
     xlab="Year", ylab="2011 USD/hour", ylim=c(10, 40), sub = "Data: PWT")
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col="gray90", border=NA)
lines(year[c(20:64)], iyL[c(20:64)], lty=1)
lines(year[c(20:64)], miyL[c(20:64)], lty=2)
legend("top", bty="n", 
       legend=c(expression(paste(bar(y[L]))), expression(paste(tilde(y[L])))), 
       lty =c(1,2))
mtext(bquote(bar(y[L])^T  == .(round(mean(iyL[c(20:64)]), 1))~ "
             "~se(bar(y[L]))^T ==.(round(mean(seiyL[c(20:64)]), 1))~" 
             "~tilde(y[L])^T  == .(round(mean(miyL[c(20:64)]), 1))~" 
             "~hat(bar(y[L]))  ==.(round(biyL, 4))))

iwN <- tapply(x$wN, x$year, mean, na.rm=TRUE)
summary(iwN)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    1962    2421    6457    6053    7465   11237
biwN <- coef(lm(log(iwN[c(20:64)]) ~ year[c(20:64)]))[2]
seiwN <- tapply(x$wN, x$year, std.error, na.rm=TRUE)
miwN <- tapply(x$wN, x$year, median, na.rm=TRUE)
ciH <- iwN + 2*seiwN
ciL <- iwN - 2*seiwN
plot(year[c(20:64)], iwN[c(20:64)], type="l", lty=0, 
     main=expression(paste("Mean (95% CI) and median of per-capita wage ", w[N])), 
     xlab="Year", ylab="2011 USD/capita", ylim=c(1500, 15000), sub = "Data: PWT")
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col="gray90", border=NA)
lines(year[c(20:64)], iwN[c(20:64)], lty=1)
lines(year[c(20:64)], miwN[c(20:64)], lty=2)
# lines(year[c(20:64)], iwN[c(20:64)] + 2*seiwN[c(20:64)], lty=2)
# lines(year[c(20:64)], iwN[c(20:64)] - 2*seiwN[c(20:64)], lty=2)
legend("top", bty="n", 
       legend=c(expression(paste(bar(w[N]))), expression(paste(tilde(w[N])))), 
       lty =c(1,2))
mtext(bquote(bar(w[N])^T  == .(round(mean(iwN[c(20:64)]), 1))~ "
             "~se(bar(w[N]))^T ==.(round(mean(seiwN[c(20:64)]), 1))~" 
             "~tilde(w[N])^T  == .(round(mean(miwN[c(20:64)]), 1))~" 
             "~hat(bar(w[N]))  ==.(round(biwN, 4))))

iwE <- tapply(x$wE, x$year, mean, na.rm=TRUE)
summary(iwE)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    5249    7656   14833   13830   16808   24022
biwE <- coef(lm(log(iwE[c(20:64)]) ~ year[c(20:64)]))[2]
seiwE <- tapply(x$wE, x$year, std.error, na.rm=TRUE)
miwE <- tapply(x$wE, x$year, median, na.rm=TRUE)
ciH <- iwE + 2*seiwE
ciL <- iwE - 2*seiwE
plot(year[c(20:64)], iwE[c(20:64)], type="l", lty=0, 
     main=expression(paste("Mean (95% CI) and median of per-worker wage ", w[E])), 
     xlab="Year", ylab="2011 USD/worker", ylim=c(5000, 32000), sub = "Data: PWT")
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col="gray90", border=NA)
lines(year[c(20:64)], iwE[c(20:64)], lty=1)
lines(year[c(20:64)], miwE[c(20:64)], lty=2)
legend("top", bty="n", 
       legend=c(expression(paste(bar(w[E]))), expression(paste(tilde(w[E])))), 
       lty =c(1,2))
mtext(bquote(bar(w[E])^T  == .(round(mean(iwE[c(20:64)]), 1))~ "
             "~se(bar(w[E]))^T ==.(round(mean(seiwE[c(20:64)]), 1))~" 
             "~tilde(w[E])^T  == .(round(mean(miwE[c(20:64)]), 1))~" 
             "~hat(bar(w[E]))  ==.(round(biwE, 4))))

iwL <- tapply(x$wL, x$year, mean, na.rm=TRUE)
summary(iwL)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   2.674   4.723   7.537   8.255  11.016  16.971
biwL <- coef(lm(log(iwL[c(20:64)]) ~ year[c(20:64)]))[2]
seiwL <- tapply(x$wL, x$year, std.error, na.rm=TRUE)
miwL <- tapply(x$wL, x$year, median, na.rm=TRUE)
ciH <- iwL + 2*seiwL
ciL <- iwL - 2*seiwL
plot(year[c(20:64)], iwL[c(20:64)], type="l", lty=0, 
     main=expression(paste("Mean (95% CI) and median of per-hour wage ", w[L])), 
     xlab="Year", ylab="2011 USD/hour", ylim=c(4, 20), sub = "Data: PWT")
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col="gray90", border=NA)
lines(year[c(20:64)], iwL[c(20:64)], lty=1)
lines(year[c(20:64)], miwL[c(20:64)], lty=2)
legend("top", bty="n", 
       legend=c(expression(paste(bar(w[L]))), expression(paste(tilde(w[L])))), 
       lty =c(1,2))
mtext(bquote(bar(w[L])^T  == .(round(mean(iwL[c(20:64)]), 2))~ "
             "~se(bar(w[L]))^T ==.(round(mean(seiwL[c(20:64)]), 2))~" 
             "~tilde(w[L])^T  == .(round(mean(miwL[c(20:64)]), 2))~" 
             "~hat(bar(w[L]))  ==.(round(biwL, 4))))

is <- tapply(x$s, x$year, mean, na.rm=TRUE)
summary(is)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.8415  0.9085  1.0021  1.0072  1.0660  1.2265
bis <- coef(lm(log(is[c(20:64)]) ~ year[c(20:64)]))[2]
seis <- tapply(x$s, x$year, std.error, na.rm=TRUE)
mis <- tapply(x$s, x$year, median, na.rm=TRUE)
ciH <- is + 2*seis
ciL <- is - 2*seis
plot(year[c(20:64)], is[c(20:64)], type="l", lty=0, 
     main=expression(paste("Mean (95% CI) and median of exploitation rate ", sigma)), 
     xlab="Year", ylab="2011 USD/hour", ylim=c(.6, 1.4), sub = "Data: PWT")
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col="gray90", border=NA)
lines(year[c(20:64)], is[c(20:64)], lty=1)
lines(year[c(20:64)], mis[c(20:64)], lty=2)
legend("top", bty="n", 
       legend=c(expression(paste(bar(sigma))), expression(paste(tilde(sigma)))), 
       lty =c(1,2))
mtext(bquote(bar(s)^T  == .(round(mean(is[c(20:64)]), 3))~ "
             "~se(bar(sigma))^T ==.(round(mean(seis[c(20:64)]), 3))~" 
             "~tilde(sigma)^T  == .(round(mean(mis[c(20:64)]), 3))~" 
             "~hat(bar(sigma))  ==.(round(bis, 4))))

iss <- tapply(x$ss, x$year, mean, na.rm=TRUE)
summary(iss)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.4862  0.6135  0.8172  0.7779  0.8874  1.1472
biss <- coef(lm(log(iss[c(20:64)]) ~ year[c(20:64)]))[2]
seiss <- tapply(x$ss, x$year, std.error, na.rm=TRUE)
miss <- tapply(x$ss, x$year, median, na.rm=TRUE)
ciH <- iss + 2*seiss
ciL <- iss - 2*seiss
plot(year[c(20:64)], iss[c(20:64)], type="l", lty=0, 
     main=expression(paste("Mean (95% CI) and median of exploitation rate[e] ", sigma[e])), 
     xlab="Year", ylab="2011 USD/hour", ylim=c(.3, 1.5), sub = "Data: PWT")
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col="gray90", border=NA)
lines(year[c(20:64)], iss[c(20:64)], lty=1)
lines(year[c(20:64)], miss[c(20:64)], lty=2)
legend("top", bty="n", 
       legend=c(expression(paste(bar(sigma[e]))), expression(paste(tilde(sigma[e])))), 
       lty =c(1,2))
mtext(bquote(bar(sigma[e])^T  == .(round(mean(iss[c(20:64)]), 3))~ "
             "~se(bar(sigma[e]))^T ==.(round(mean(seiss[c(20:64)]), 3))~" 
             "~tilde(sigma[e])^T  == .(round(mean(miss[c(20:64)]), 3))~" 
             "~hat(bar(sigma[e]))  ==.(round(biss, 4))))

ih <- tapply(x$h, x$year, mean, na.rm=TRUE)
summary(ih)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   56896   79899  129106  118656  144384  175678
bih <- coef(lm(log(ih[c(20:64)]) ~ year[c(20:64)]))[2]
seih <- tapply(x$h, x$year, std.error, na.rm=TRUE)
mih <- tapply(x$h, x$year, median, na.rm=TRUE)
ciH <- ih + 2*seih
ciL <- ih - 2*seih
plot(year[c(20:64)], ih[c(20:64)], type="l", lty=0, 
     main=expression(paste("Mean (95% CI) and median of capital composition ", h)), 
     xlab="Year", ylab="2011 USD/hour", ylim=c(50000, 210000), sub = "Data: PWT")
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col="gray90", border=NA)
lines(year[c(20:64)], ih[c(20:64)], lty=1)
lines(year[c(20:64)], mih[c(20:64)], lty=2)
legend("top", bty="n", 
       legend=c(expression(paste(bar(h))), expression(paste(tilde(h)))), 
       lty =c(1,2))
mtext(bquote(bar(h)^T  == .(round(mean(ih[c(20:64)]), 1))~ "
             "~se(bar(h))^T ==.(round(mean(seih[c(20:64)]), 1))~" 
             "~tilde(h)^T  == .(round(mean(mih[c(20:64)]), 1))~" 
             "~hat(bar(h))  ==.(round(bih, 2))))

iga <- tapply(x$ga, x$year, mean, na.rm=TRUE)
summary(iga)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.2716  0.3127  0.3635  0.3788  0.4450  0.5433
biga <- coef(lm(log(iga[c(20:64)]) ~ year[c(20:64)]))[2]
seiga <- tapply(x$ga, x$year, std.error, na.rm=TRUE)
miga <- tapply(x$ga, x$year, median, na.rm=TRUE)
ciH <- iga + 2*seiga
ciL <- iga - 2*seiga
plot(year[c(20:64)], iga[c(20:64)], type="l", lty=0, 
     main=expression(paste("Mean (95% CI) and median of output-capital ratio ", gamma)), 
     xlab="Year", ylab="2011 USD/hour", ylim=c(.2, .7), sub = "Data: PWT")
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col="gray90", border=NA)
lines(year[c(20:64)], iga[c(20:64)], lty=1)
lines(year[c(20:64)], miga[c(20:64)], lty=2)
legend("top", bty="n", 
       legend=c(expression(paste(bar(gamma))), expression(paste(tilde(gamma)))), 
       lty =c(1,2))
mtext(bquote(bar(gamma)^T  == .(round(mean(iga[c(20:64)]), 4))~ "
             "~se(bar(gamma))^T ==.(round(mean(seiga[c(20:64)]), 4))~" 
             "~tilde(gamma)^T  == .(round(mean(miga[c(20:64)]), 4))~" 
             "~hat(bar(gamma))  ==.(round(biga, 5))))

ir <- tapply(x$r, x$year, mean, na.rm=TRUE)
summary(ir)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.1231  0.1337  0.1464  0.1526  0.1678  0.1997
bir <- coef(lm(log(ir[c(20:64)]) ~ year[c(20:64)]))[2]
seir <- tapply(x$r, x$year, std.error, na.rm=TRUE)
mir <- tapply(x$r, x$year, median, na.rm=TRUE)
ciH <- ir + 2*seir
ciL <- ir - 2*seir
plot(year[c(20:64)], ir[c(20:64)], type="l", lty=0, 
     main=expression(paste("Mean (95% CI) and median of profit rate ", r)), 
     xlab="Year", ylab="2011 USD/hour", ylim=c(.07, .26), sub = "Data: PWT")
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col="gray90", border=NA)
lines(year[c(20:64)], ir[c(20:64)], lty=1)
lines(year[c(20:64)], mir[c(20:64)], lty=2)
legend("top", bty="n", 
       legend=c(expression(paste(bar(r))), expression(paste(tilde(r)))), 
       lty =c(1,2))
mtext(bquote(bar(r)^T  == .(round(mean(ir[c(20:64)]), 4))~ "
             "~se(bar(r))^T ==.(round(mean(seir[c(20:64)]), 4))~" 
             "~tilde(r)^T  == .(round(mean(mir[c(20:64)]), 4))~" 
             "~hat(bar(r))  ==.(round(bir, 5))))

ika <- tapply(x$ka, x$year, mean, na.rm=TRUE)
summary(ika)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
## 0.09256 0.10860 0.12440 0.12873 0.13799 0.20427
bika <- coef(lm(log(ika[c(20:64)]) ~ year[c(20:64)]))[2]
seika <- tapply(x$ka, x$year, std.error, na.rm=TRUE)
mika <- tapply(x$ka, x$year, median, na.rm=TRUE)
ciH <- ika + 2*seika
ciL <- ika - 2*seika
plot(year[c(20:64)], ika[c(20:64)], type="l", lty=0, 
     main=expression(paste("Mean (95% CI) and median of accumulation rate ", kappa)), 
     xlab="Year", ylab="2011 USD/hour", ylim=c(0, .3), sub = "Data: PWT")
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col="gray90", border=NA)
lines(year[c(20:64)], ika[c(20:64)], lty=1)
lines(year[c(20:64)], mika[c(20:64)], lty=2)
legend("top", bty="n", 
       legend=c(expression(paste(bar(kappa))), expression(paste(tilde(kappa)))), 
       lty =c(1,2))
mtext(bquote(bar(kappa)^T  == .(round(mean(ika[c(20:64)]), 4))~ "
             "~se(bar(kappa))^T ==.(round(mean(seika[c(20:64)]), 4))~" 
             "~tilde(kappa)^T  == .(round(mean(mika[c(20:64)]), 4))~" 
             "~hat(bar(ka))  ==.(round(bika, 5))))

# Comparisons

iyN <- tapply(x$yN, x$year, mean, na.rm=TRUE)
miyN <- tapply(x$yN, x$year, median, na.rm=TRUE)
seiyN <- tapply(x$yN, x$year, std.error, na.rm=TRUE)
ciH <- iyN + 2*seiyN
ciL <- iyN - 2*seiyN
biyN <- coef(lm(log(iyN) ~ year))[2]
plot(year[c(20:64)], iyN[c(20:64)], type="l", lty=0, 
     main=expression(paste("Means (95% CI) and medians of ", y[N], " and ", w[N])), 
     xlab="Year", ylab="2011 USD", ylim=c(900, 30000))
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col=rgb(1, 0, 0, alpha=.25), border=NA)
lines(year[c(20:64)], iyN[c(20:64)], lty=1, col="red")
lines(year[c(20:64)], miyN[c(20:64)], lty=2, col="red")
iwN <- tapply(x$wN, x$year, mean, na.rm=TRUE)
miwN <- tapply(x$wN, x$year, median, na.rm=TRUE)
seiwN <- tapply(x$wN, x$year, std.error, na.rm=TRUE)
ciH <- iwN + 2*seiwN
ciL <- iwN - 2*seiwN
biwN <- coef(lm(log(iwN) ~ year))[2]
lines(year[c(20:64)], iwN[c(20:64)], lty=0)
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col=rgb(0, 0, 1, .25), border=NA)
lines(year[c(20:64)], iwN[c(20:64)], lty=1, col="blue")
lines(year[c(20:64)], miwN[c(20:64)], lty=2, col="blue")
legend("top", bty="n", legend=c(expression(paste(bar(y[N]))), 
                                expression(paste(bar(w[N]))), 
                                expression(paste(tilde(y[N]))), 
                                expression(paste(tilde(w[N])))), 
       lty =c(1,1, 2, 2), lwd = c(1, 1, 2, 2), col=c("red", "blue", "red", "blue"))
mtext(bquote(hat(bar(y[N]))  ==.(round(biyN, 4))~","~ hat(bar(w[N])) ==.(round(biwN, 4))))

iyE <- tapply(x$yE, x$year, mean, na.rm=TRUE)
miyE <- tapply(x$yE, x$year, median, na.rm=TRUE)
seiyE <- tapply(x$yE, x$year, std.error, na.rm=TRUE)
ciH <- iyE + 2*seiyE
ciL <- iyE - 2*seiyE
biyE <- coef(lm(log(iyE) ~ year))[2]
plot(year[c(20:64)], iyE[c(20:64)], type="l", lty=0, 
     main=expression(paste("Means (95% CI) and medians of ", y[E], 
                           " and ", w[E])), 
     xlab="Year", ylab="2011 USD", ylim=c(5000, 60000))
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col=rgb(1, 0, 0, alpha=.25), border=NA)
lines(year[c(20:64)], iyE[c(20:64)], lty=1, col="red")
lines(year[c(20:64)], miyE[c(20:64)], lty=2, col="red")
iwE <- tapply(x$wE, x$year, mean, na.rm=TRUE)
miwE <- tapply(x$wE, x$year, median, na.rm=TRUE)
seiwE <- tapply(x$wE, x$year, std.error, na.rm=TRUE)
ciH <- iwE + 2*seiwE
ciL <- iwE - 2*seiwE
biwE <- coef(lm(log(iwE) ~ year))[2]
lines(year[c(20:64)], iwE[c(20:64)], lty=0)
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col=rgb(0, 0, 1, .25), border=NA)
lines(year[c(20:64)], iwE[c(20:64)], lty=1, col="blue")
lines(year[c(20:64)], miwE[c(20:64)], lty=2, col="blue")
legend("top", bty="n", legend=c(expression(paste(bar(y[E]))), 
                                expression(paste(bar(w[E]))), 
                                expression(paste(tilde(y[E]))), 
                                expression(paste(tilde(w[E])))), 
       lty =c(1,1, 2, 2), lwd = c(1, 1, 2, 2), col=c("red", "blue", "red", "blue"))
mtext(bquote(hat(bar(y[E]))  ==.(round(biyE, 4))~","~ hat(bar(w[E])) ==.(round(biwE, 4))))

iyL <- tapply(x$yL, x$year, mean, na.rm=TRUE)
miyL <- tapply(x$yL, x$year, median, na.rm=TRUE)
seiyL <- tapply(x$yL, x$year, std.error, na.rm=TRUE)
ciH <- iyL + 2*seiyL
ciL <- iyL - 2*seiyL
biyL <- coef(lm(log(iyL) ~ year))[2]
plot(year[c(20:64)], iyL[c(20:64)], type="l", lty=0, 
     main=expression(paste("Means (95% CI) and medians of ", y[L], 
                           " and ", w[L])), 
     xlab="Year", ylab="2011 USD", ylim=c(4, 41))
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col=rgb(1, 0, 0, alpha=.25), border=NA)
lines(year[c(20:64)], iyL[c(20:64)], lty=1, col="red")
lines(year[c(20:64)], miyL[c(20:64)], lty=2, col="red")
iwL <- tapply(x$wL, x$year, mean, na.rm=TRUE)
miwL <- tapply(x$wL, x$year, median, na.rm=TRUE)
seiwL <- tapply(x$wL, x$year, std.error, na.rm=TRUE)
ciH <- iwL + 2*seiwL
ciL <- iwL - 2*seiwL
biwL <- coef(lm(log(iwL) ~ year))[2]
lines(year[c(20:64)], iwL[c(20:64)], lty=0)
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col=rgb(0, 0, 1, .25), border=NA)
lines(year[c(20:64)], iwL[c(20:64)], lty=1, col="blue")
lines(year[c(20:64)], miwL[c(20:64)], lty=2, col="blue")
legend("topleft", bty="n", legend=c(expression(paste(bar(y[L]))), 
                                expression(paste(bar(w[L]))), 
                                expression(paste(tilde(y[L]))), 
                                expression(paste(tilde(w[L])))), 
       lty =c(1,1, 2, 2), lwd = c(1, 1, 2, 2), col=c("red", "blue", "red", "blue"))
mtext(bquote(hat(bar(y[L]))  ==.(round(biyL, 4))~","~ hat(bar(w[L])) ==.(round(biwL, 4))))

is <- tapply(x$s, x$year, mean, na.rm=TRUE)
mis <- tapply(x$s, x$year, median, na.rm=TRUE)
seis <- tapply(x$s, x$year, std.error, na.rm=TRUE)
ciH <- is + 2*seis
ciL <- is - 2*seis
bis <- coef(lm(log(is) ~ year))[2]
plot(year[c(20:64)], is[c(20:64)], type="l", lty=0, 
     main=expression(paste("Means (95% CI) and medians of ", 
                           sigma, " and ", sigma[e])), 
     xlab="Year", ylab=" ", ylim=c(0.4, 1.7))
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col=rgb(1, 0, 0, alpha=.25), border=NA)
lines(year[c(20:64)], is[c(20:64)], lty=1, col="red")
lines(year[c(20:64)], mis[c(20:64)], lty=2, col="red")
iss <- tapply(x$ss, x$year, mean, na.rm=TRUE)
miss <- tapply(x$ss, x$year, median, na.rm=TRUE)
seiss <- tapply(x$ss, x$year, std.error, na.rm=TRUE)
ciH <- iss + 2*seiss
ciL <- iss - 2*seiss
biss <- coef(lm(log(iss) ~ year))[2]
lines(year[c(20:64)], iss[c(20:64)], lty=0)
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col=rgb(0, 0, 1, .25), border=NA)
lines(year[c(20:64)], iss[c(20:64)], lty=1, col="blue")
lines(year[c(20:64)], miss[c(20:64)], lty=2, col="blue")
legend("top", bty="n", legend=c(expression(paste(bar(sigma))), 
                                    expression(paste(bar(sigma[e]))), 
                                    expression(paste(tilde(sigma))), 
                                    expression(paste(tilde(sigma[e])))), 
       lty =c(1,1, 2, 2), col=c("red", "blue", "red", "blue"))
mtext(bquote(hat(bar(sigma))  ==.(round(bis, 4))~","~ hat(bar(sigma[e])) ==.(round(biss, 4))))

ir <- tapply(x$r, x$year, mean, na.rm=TRUE)
mir <- tapply(x$r, x$year, median, na.rm=TRUE)
seir <- tapply(x$r, x$year, std.error, na.rm=TRUE)
ciH <- ir + 2*seir
ciL <- ir - 2*seir
bir <- coef(lm(log(ir) ~ year))[2]
plot(year[c(20:64)], ir[c(20:64)], type="l", lty=0, 
     main=expression(paste("Means (95% CI) and medians of ", 
                           r, " and ", kappa)), 
     xlab="Year", ylab=" ", ylim=c(0.05, .3))
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col=rgb(1, 0, 0, alpha=.25), border=NA)
lines(year[c(20:64)], ir[c(20:64)], lty=1, col="red")
lines(year[c(20:64)], mir[c(20:64)], lty=2, col="red")
ika <- tapply(x$ka, x$year, mean, na.rm=TRUE)
mika <- tapply(x$ka, x$year, median, na.rm=TRUE)
seika <- tapply(x$ka, x$year, std.error, na.rm=TRUE)
ciH <- ika + 2*seika
ciL <- ika - 2*seika
bika <- coef(lm(log(ika) ~ year))[2]
lines(year[c(20:64)], ika[c(20:64)], lty=0)
polygon(c(year[c(20:64)], rev(year[c(20:64)])), 
        c(ciL[c(20:64)], rev(ciH[c(20:64)])), 
        col=rgb(0, 0, 1, .25), border=NA)
lines(year[c(20:64)], ika[c(20:64)], lty=1, col="blue")
lines(year[c(20:64)], mika[c(20:64)], lty=2, col="blue")
legend("top", bty="n", legend=c(expression(paste(bar(r))), 
                                expression(paste(bar(kappa))), 
                                expression(paste(tilde(r))), 
                                expression(paste(tilde(kappa)))), 
       lty =c(1,1, 2, 2), lwd = c(1, 1, 2, 2), col=c("red", "blue", "red", "blue"))
mtext(bquote(hat(bar(r))  ==.(round(bir, 4))~","~ hat(bar(kappa)) ==.(round(bika, 4))))

6 Regional views

Regional views here. Using both the World Bank and CIA classifications.

7 Multivariate time series analysis

The last section reports on the results of VARs, SVARs, VECM, and SVECM estimations, in an attempt to capture structural relations among

8 Framework

This chapter summarizes the accounting and theoretical framework used in the analysis of the PWT. It follows on the tradition of Marx’s critique of political economy.7 For a modern mathematical treatment, see (Lange and Banasiński 1969; Bródy 1970; Pasinetti 1977; Morishima 1978; and Foley 2009).

8.1 Gross output and value added

Consider the flow of annual output of a capitalist society, denoted by \(X\), in physical units. Conveniently, choose output (or “use-value”) units so that each requires exactly one unit of social labor for its reproduction (i.e. one unit of generic use-value equals one unit of value or one unit of social labor time). Thus \(X\) is also the value of annual output, quantified — like all values — in social labor (time) units.

Conventionally, \(X\) is also called the “gross output” or “gross income.” The production of \(X\) requires the utilization of the preexisting stocks of means of production and labor power. Thus, in producing \(X\), \(k\) value units of constant capital are used up. This is done by utilizing \(K\) value units of constant capital outstanding at the beginning of the year. Note that \(k\) is a flow and \(K\) is a stock, and their relation is given by

\[k = K \tau,\]

In Marx’s terms, since the extant stock of means of production utilized preexists its utilization in producing \(X\), the stock \(K\) of constant capital represents “past” or “dead” social labor. By using a fraction \(\tau\) of \(K\) (i.e. by spending the flow \(k\)) in producing \(X\), the workers maintain this value passing it on to \(X\).

Note that the stock of means of production utilized includes both durable and nondurable production inputs. In conventional terms, it includes the stock of “fixed capital” as well as the inventories of raw and ancillary materials, etc. commonly called “intermediate inputs.”

Aside from \(k\), the other component of \(X\) is, of course, the flow of annual services supplied by the labor power utilized, which — in Marx’s terms – generates the new value or value added in the period, \(Y\). In other words, \(Y\) is the quantity of “living” social labor spent in the year to produce the annual gross output \(X\).

In algebraic terms: \[ X = k + Y, \\ X = K \tau + Y. \]

Two other conventional names to designate the value added \(Y\) are “net output,” “net income,” or simply “income.”

As a result of capitalist ownership over the means of production, \(Y\) is split into two portions. One portion, \(W\), is the flow of variable capital, i.e. the quantity of social labor represented in the wages of the workers utilized in production in the period. In other words, this portion of \(Y\) is distributed among the workers as their annual labor income (as the Bureau of Economic Analysis calls the sum of wages, salaries, and benefits earned by the employed labor force in a given period).

For a capitalist society to be sustainable in the long run, these wages must suffice for the workers to regenerate the labor power utilized in the year, not in accordance with strict survival needs but rather in accordance with existing social norms, norms that shift with the political and cultural development of the workers. In other terms, these wages should represent sufficient social labor time to reproduce the flow of commodities the workers need to consume in the period to sustain themselves and their households, under acceptable social standards of health, nutrition, housing, schooling, etc. These social standards are the result of prior historical class conflict.

The remaining portion of \(Y\) is the flow of surplus value \(\Pi\), i.e. the portion retained by the capitalists after the \(W\) outlay. The surplus value, \(\Pi\), is the part extorted from the workers on the basis of the capitalists’ ownership over the means of production, by excluding them from access to such means of production and, thereby, to their means of subsistence. The surplus value is the source of all forms of non-labor income or, as the BEA calls it, “property income” (i.e. profits, interests, rents, and taxes).

Thus, \[ Y = W + \Pi. \]

Therefore: \[ X = K \tau + W + \Pi. \]

In a sense, in spite of the conditions in which they live and work under capitalist rule, the workers exercise a measure of direct control over their labor income, and the corresponding private consumption activities that reproduce their labor power.

In some other sense, for as long as the conditions of the workers is one of subordination and dependence on capital, even these consumption activities, which take place in the privacy of the workers’ households, are dominated — though indirectly — by capital. In the last analysis, the workers only exercise true control over their time and activities outside of the workplace (where they may escape direct capitalist supervision) if they employ their outside time to enlighten themselves and conduct an organized class struggle to rid themselves of exploitation.

8.2 Class exploitation

Again, the living social labor of the workers spent in the year, \(Y\), is thus split into two diametrically opposed portions. Thus, if \(\omega \equiv W/Y\) denotes the labor share of income (or “wage share”) and \(\pi \equiv \Pi/Y\) is the profit share of income, then \[ 1 = \omega + \pi, \]

an equation that exhibits the fundamentally antagonistic, “zero-sum game,” character of the class relation between capitalists and workers over any given period of time.

Clearly, the larger \(\pi = 1 - \omega\), the larger the effective control that the capitalists exert over the workers’ lives, the larger the degree to which they are exploited by capital, i.e. the larger the extent to which the workers’ own working and living activity becomes alien to and turned against them. In highlighting this fundamental opposition at the root of any capitalist society, Marx proposed the rate of surplus value or “rate of exploitation,” which he defined as: \[ \sigma \equiv \frac{\Pi}{W}. \]

Marx regarded \(\sigma\) as the most fundamental proportion characterizing the structure of any capitalist society, as it captures in one sweep the economic balance of forces between the main classes of society, underpinning their overall social (not only economic, but also political, legal, and spiritual) balance of forces. As a result, the path of \(\sigma\) over time exhibits the fluid state of the class struggles between the main classes of modern society and, thus, describes the fundamental dynamics of modern social life.

It is easy to see that the rate of surplus value, \(\sigma\), contains the same information conveyed by the profit share of income, \(\pi\). Their measurement scales are different, but the two proportions are positively monotonically related. Alternatively, and not surprisingly, \(\sigma\) is negatively monotonically related to \(\omega\). More specifically: \[ \sigma = \frac{\pi}{1 - \pi},\\ \sigma = \frac{1 - \omega}{\omega},\\ \pi = \frac{\sigma}{1 - \sigma},\\ \omega = \frac{1}{1 + \sigma},\\ 1 + \sigma = \frac{1}{\omega}. \]

8.3 Capital composition

Ascending from the deepest (antagonistic class) structure toward more “superficial” social structures, namely those that are more apparent in the day-to-day life of a capitalist society, such as those that reflect the competition among individual capitals, Marx introduced another key “proportion,” the capital composition, i.e. the ratio or relation between the constant and variable components of capital. Marx considered the capital composition in both stock-stock and flow-flow versions.8 In stock-stock terms, the capital composition \(h\) is defined as: \[ h \equiv \frac{K}{W/\tau_W} ,\\ h = \tau_W \left( \frac{K}{W} \right), \]

where \(\tau_W\) denotes that turnover ratio of variable capital. Thus, for example, if the workers received annual wages \(W = 260\) value units while they are paid, on average, biweekly, then \(\tau_W = 26\), and the capitalists need only hold as a more or less permanent asset a liquid, available on pay day, “wage fund” \(V = W/\tau_W\) in the amount of \(260/26=10\) value units. Clearly, if the capitalists paid the workers at once their annual wages, the value of the labor-power services annually spent, then they would have to hold \(W=260\) value units as their “wage fund” ready to be outlaid.9

The flow-flow capital value composition is defined as: \[ \tilde{h} \equiv \frac{k}{W}. \]

It is easy to see that the following relations hold: \[ h = \tau_W \tilde{h}, \\ \tilde{h} = \frac{h}{\tau_W}. \]

Sometimes, the capital composition is expressed in gross (flow-flow) terms as: \[ \check{h} = \frac{k}{k + W},\\ \check{h} = 1 + \tilde{h},\\ \check{h} = 1 + \frac{h}{\tau_W}. \]

Since the gross (flow-flow) capital composition is a linear function of the (flow-flow) capital composition \(\tilde{h}\), with both slope and intercept equal to 1, they are simple positive monotonic trans-forms of each other. When one of them varies, the other one also varies in the same direction and at the same pace. The relation between \(\hat{h}\) and \(h\) is also positive and monotonic, but not as simple. The intercept is also 1, but the slope in this case is \(1/\tau_W\).

Using the definitions above, the annual value of output \(X\) can be expressed as: \[ X = W (1 + \sigma + \tilde{h}),\\ X = W (\sigma + \check{h}). \\ \]

Therefore, the efficacy of variable capital in the production of \(X\) is given by:10 \[ \frac{X}{W} = \sigma + \check{h}, \\ \frac{X}{W} = 1 + \sigma + \tilde{h}, \\ \frac{X}{W} = 1 + \sigma + \frac{h}{\tau_W}. \]

8.4 Profit rate

On the surface of capitalist life, capital appears as productive. It is, indeed, in the broader sense of the term, productive of exploitation for the benefit of the capitalists. The conventional measure of this ability of capital to benefit the capitalists over a year is the annual profit rate or the return on the stock of capital utilized. Marx defines the average profit rate on the capital stock as: \[ r \equiv \frac{\Pi}{K + V}. \]

Note that \(r\) is a flow-stock proportion: the units of value in flow terms are units of social labor per year. The units of value in stock terms are simply social labor units. Thus, social labor units cancel each other out in the numerator and denominator, and the units of the profit rate are in reciprocal units of a year period.

It is easy to verify that these relations follow from the definition: \[ r = \frac{\sigma \tau_W}{1 + h},\\ r = \frac{\sigma \tau_W}{1 + \tilde{h} \tau_W}. \]

A narrower “proportion” or measure of profitability is the constant-capital profit rate. This is the return rate on the constant capital stock, i.e. the return on the outstanding capital employed consisting of means of production, durable and nondurable, employed in producing \(X\). Unlike the general profit rate above, this narrower profit rate excludes the stock of variable capital (the “wage fund”) from the denominator. \[ \bar{r} \equiv \frac{\Pi}{K}. \]

Clearly, \[ \bar{r} = \frac{\sigma}{h/\tau_W} = \frac{\sigma \tau_W}{h}. \]

Since \(h\) tends to be a large number, i.e. roughly, \(h \in (50, 200)\), then \[ r \approx \bar{r}. \]

The constant-capital profit rate can be estimated more readily from the national accounts. Typically, the stock of constant capital is estimated using the perpetual-inventories method on the basis of flow measures of capital formation and some assumptions on the rates of depreciation and time-discounting. Accounting norms prevent balance sheets from including, explicitly, the value of the labor power employed.11 Often times, partial measures of the value of labor power are included in balance sheets under the guise of “intangible assets,” but there is no easy way to determine them unequivocally. This is why, \(\bar{r}\) is often taken as the proxy for \(r\).

A frequent decomposition of the profit rate (a la Dupont method) follows: \[ r = \pi \gamma \left(\frac{K}{K + W/\tau_W}\right), \]

where \(\gamma \equiv Y/K\) be the (net output) efficacy of constant capital.

Again, since \(K/(K + W/\tau_W) \approx 1\) in macroeconomic data, the constant-capital profit rate can be used comfortably as a proxy for \(r\): \[ \bar{r} = \pi \gamma,\\ \bar{r} = (1 - \omega) \gamma. \]

Note that, in the limit, if \(\omega \rightarrow 0\) (i.e. \(\pi \rightarrow 1\)), then \(\bar{r} \rightarrow \gamma\). Thus, \(\gamma\) is the maximum constant-capital profit rate. Thus, Piketty’s (2014, ) claim, which can be restated as saying that the growth rate of \(K\) exceeds the growth rate of \(Y\), implies a tendency of the maximum possible profit rate to fall. Not quite what Marx claimed to be an empirical tendency, but not completely unrelated either.

Again, keep in mind that the profit share \(\pi\) and the exploitation rate \(\sigma\) are (nonlinear) monotonic trans-forms of each other: \[ \pi = \frac{\sigma}{1 + \sigma},\\ \sigma = \frac{\pi}{1 - \pi}. \]

More specifically, \(\sigma\) goes to infinity as \(\pi \rightarrow 1\). Said differently, \(\pi\) approaches 1 as \(\sigma\) increases indefinitely.

8.5 Kaleckian hypothesis

Mihal Kalecki noted that the workers tend to consume what they earn while the capitalists tend to earn what they spend (“invest”). This very plausible hypothesis permits us to narrow down our estimates of the degree of exploitation and of the profit rate in an approach similar to Paul Samuelson’s famous “revealed preference” theory. One way to estimate \(\sigma\) and \(r\) (and, by implication, \(\gamma\)) is to determine their bounds or extreme values under some hypothesis.12

This is related to two of the methods of estimation of net income in the national accounts: the “output method” and the “expenditure method.” Thus, one can proxy the annual wage bill \(W\), not only directly by assuming it equal to annual labor income, but also by assuming it equal to the level of private consumption spending recorded in the national accounts: \(C\). Thus, broadly defined gross capital formation (or “investment spending”) can be estimated as \(I = Y-C \approx Y - C - G \approx Y - C - G - X + Q\), where \(G\) is government consumption spending, \(X\) is the annual value of exports, and \(Q\) is the annual value of imports. Thus, we develop a parallel set of structural proportions, under the Kaleckian hypothesis: \[ \epsilon \equiv \frac{Y - C}{C}, \\ \epsilon \approx \frac{Y-C-G}{C+G}, \\ \epsilon \approx \frac{Y-C-X=Q}{C+X-Q}, \\ \bar{\gamma} \equiv \frac{Y-C}{K}, \\ \bar{\gamma} \approx \frac{Y-C-G}{K}, \\ \bar{\gamma} \approx \frac{Y-C-G-X+Q}{K}, \]

where \(\epsilon\) is a sort of rate of exploitation and \(\bar{\gamma}\) a sort of profit rate of the stock of constant capital.

This distinction is theoretically and practically important. In a sense, the dispossession of the workers that permits the rule of capital is dispossession of their ultimate means of direct reproduction: their consumption necessities. To the extent the workers consumption spending significantly exceeds their income \(W\), the workers are effectively appropriating a portion of the formal surplus value \(\Pi\). Under widespread consumption credit opportunities available to the workers, the difference \(C - W\) represents a proxy for the extent of “financialization” insofar as it temporarily stretches the workers’ standard of living. However, debt exerts a terrifying moral weight on working people, which becomes apparent in periods of crises, when repossessions, foreclosures, and bankruptcy penalties plague the workers’ households. This is a very good reason to use these alternative measures of exploitation and profitability.

Furthermore, the exclusion of government consumption spending \(G\) or, alternatively, of exports \(X\) to obtain narrower definitions of gross capital formation \(I\) offer, in the former case, a way to bound private capital accumulation (since \(G\) is subject to the workers’ political strength in influencing the allocation of public funds) and, in the latter case, a way to bound local capital accumulation (since net exports \(X-Q\) roughly equals the current account of the balance of payments and the negative of the capital account balance, minus the official reserves account, corresponds to the accumulation of local capital abroad). Clearly, for the entire globe, \(X-Q = 0\), i.e. all output has to be “domestically absorbed” as there is no (yet) trade with other planets. Thus, net exports only modifies the international structure of capital holdings.

Note, in closing, that all of the mathematical relations shown in this note are either direct accounting identities or are derived directly from these identities. They all follow from the definitions and do not presume any particular theoretical approach in exclusion of others. In other words, no claim is made as to which variables or proportions exert causal effects on others. My personal preference is to explore all the potential theoretical avenues suggested by these identities, and then use the empirical data, judiciously considered and analyzed, as a check on these alternative theoretical propositions.

8.6 Linear algebraic set-up

The framework can be restated more generally in the terms of input-output analysis. Further reference can be found in (Lange and Banasiński 1969; Bródy 1970; Pasinetti 1977; Morishima 1978; Foley 2009). For an elementary review of the foundations of input-output analysis, see my note:

https://www.overleaf.com/read/vyrfzncpfxmy

Consider a hypothetical commodity-producing society. The inter-industry relations are represented by the viable square \((n-1)\) matrix \(\mathbf{A}\) of inter-industry input coefficients. \[ \mathbf{A} \equiv \begin{bmatrix} a_{1,1} & \dots & a_{1, (n-1)} \\ \dots & \dots & \dots \\ a_{(n-1), 1} & \dots & a_{(n-1), (n-1)} \\ \end{bmatrix} \]

A viable matrix shows such inter-industry coefficients that each industry’s output exceeds the quantities used up as productive inputs (means of production). As a result, this matrix has a maximum eigenvalue \(\bar{\lambda} < 1\).

The vector of direct labor coefficients is given by: \[ \mathbf{l} \equiv \begin{bmatrix} l_{1} \\ \dots \\ l_{(n-1)} \end{bmatrix} \]

Following Marx, it is assumed that the direct producers’ wages are paid in advance. Then, the general production-price system, per unit of gross output, is given by: \[ \mathbf{p}' = (w \mathbf{l}' + \mathbf{p}' \mathbf{A} ) (1 + r), \\ \mathbf{p}' = (w \mathbf{l}') (1 + r) + (\mathbf{p}' \mathbf{A} ) (1 + r), \tag{8.1} \]

where \(w\) is the wage rate and \(r\) is the average profit rate, assumed equal across all industries. The column vector \(\mathbf{p}\) is of dimension \(n-1\). The term \(w \mathbf{l}'\) is, in Marx’s terms, the variable capital, i.e. the outlays of the owners of the means of production in exchange for labor-power services during the period. The term \(\mathbf{p}' \mathbf{A}\), is the constant capital, or the capital outlays that purchase the means of production spent in the period. Finally, the term \((w \mathbf{l}' + \mathbf{p}' \mathbf{A}) r\) is the surplus value: the income that the owners of the means of production can extort from the direct producers on the basis of their ownership monopoly over the means of production.13

In the case of simple commodity production, where the direct producers own the means of production, exchange their output in the market, and receive as income the value of the product sold, \(w = y = 1\) and \(r = 0\), where \(y\) is the (normalized) new value added, ``complete wage’’ (Pasinetti), or producers/owners’ income. The totality of \(\mathbf{l}\) is received by the direct producers and owners. The totality of the income generated by their productive labor is appropriated by the producers. Now, since (\(w = y = 1, r = 0)\), \(\mathbf{p}\) is replaced with \(\mathbf{v}\). Then: \[ \mathbf{v}' = \mathbf{v}' \mathbf{A} + y \mathbf{l}' = \mathbf{v}' \mathbf{A} + \mathbf{l}'.\tag{8.2} \]

Therefore: \[ \mathbf{v}' (\mathbf{I} - \mathbf{A}) = \mathbf{l}',\\ \mathbf{v}' = \mathbf{l}' (\mathbf{I} - \mathbf{A})^{-1}. \]

Marx referred to \(\mathbf{v}\) as (social-labor) values'' while Pasinetti (\cite{pasinetti1977lectures}) designated them asvertically-integrated labor coefficients.’’

This simple commodity-producing society'' is the basic referent against which Marx erects hismodel’’ of a capitalist society. The essential precondition for a capitalist society, aside from the existence of commodity production (i.e. private ownership, markets), is gaping inequality in the distribution of wealth ownership. Massive historical processes of dispossession of the direct producers from their most basic means of subsistence, and of the means of production of such means of subsistence, etc. (basically, access to land), intervened to create this degree of inequality, in parts of Europe first. These processes continue to this day in many parts of the world.

Marx’s chief interest was grasping the structure and dynamics of a modern, fully capitalistic society. In this modern setting, the direct producers already existed as an impoverished, fragmented, and demoralized mass, as proletarians, offering their labor power for sale as another commodity in the markets. The capitalists, on the basis of their concentrated ownership over the means of production, can then appropriate a portion of the workers’ value added as a surplus value. All the capitalists need to ensure the replication of these social conditions is for the workers to subsist as an impoverished, divided, and compliant mass. As much the workers, through their struggles, may improve their condition above mere subsistence, they can only consume a modest portion of some of the commodities they annually produce if capital is to dominate. Thus, if we align \(\mathbf{A}\) so that its first rows list the workers’ necessities, then their consumption basket can be designated by \(\mathbf{c}\) such that \[ \mathbf{c} \equiv \begin{bmatrix} c_{1} \\ \dots \\ c_{h} \\ 0 \\ \dots \\ 0 \end{bmatrix}, \]

where \(\mathbf{c}\) is a \((n-1)\) vector and \(h \leq n-1\).

Then, a necessary condition for a capitalist society to exist is that \(\mathbf{v}' \mathbf{c} = \omega y\) such that wage share \(\omega < 1\), strictly. Therefore, the surplus value is given by\((1 - \omega) y\). Using the set-up in equation (8.2) and assuming \(y=1\) to simplify (i.e. \(\mathbf{v}' \mathbf{c} = \omega\)): \[ \mathbf{v}' = \mathbf{v}' \mathbf{A} + \mathbf{v}' \mathbf{c} \mathbf{l}',\\ \mathbf{v}' = \mathbf{v}' \mathbf{A} + \left(\frac{\omega}{\omega}\right) \mathbf{v}' \mathbf{c} \mathbf{l}' + \left(\frac{1-\omega}{\omega}\right) \mathbf{v}' \mathbf{c} \mathbf{l}',\\ \mathbf{v}' = \mathbf{v}' \mathbf{A} + \mathbf{v}' \mathbf{c} \mathbf{l}' + \left(\frac{1-\omega}{\omega}\right) \mathbf{v}' \mathbf{c} \mathbf{l}'.\tag{8.3} \]

Note that the dimension of \(\mathbf{v}'\) is \(1 \times (n-1)\).

If, for simplicity, \(\omega\) is assumed to be common to all industries (no industries with a privileged labor force, its workers bribed with extra crumbs), then the surplus value rate, \(\sigma \equiv (1 - \omega)/\omega\), is also common to all industries, and the \(n-1\) equations \[ \mathbf{v}' \left[\mathbf{I} - \mathbf{A} - (1 + \sigma) \mathbf{c} \mathbf{l}'\right] = \mathbf{0}', \]

form a homogeneous system with \(n\) unknowns (\(\mathbf{v}, \sigma)\). Again, the equation \[ (1 + \sigma) \mathbf{v}' \mathbf{c} = y = 1 \tag{8.4} \]

sets value added (or income, or the complete wage'') as thenumeraire’’ in which the relative values \(\mathbf{v}\) can now be determined by solving the new system. The necessary condition for nontrivial (zero) solutions to exist is for the determinant of \(\mathbf{I} - \mathbf{A} - (1 + \sigma) \mathbf{c} \mathbf{l}'\) to vanish: \[ \mid\mathbf{I} - \mathbf{A} - (1 + \sigma) \mathbf{c} \mathbf{l}'\mid= 0. \]

Since \(\mathbf{A}\) is viable, then the rank of matrix \(\mathbf{I} - \mathbf{A} - (1 + \sigma) \mathbf{c} \mathbf{l}'\) is \(n-2\). There is one degree of freedom in the system. Thus, one may choose \(\sigma\) (or \(\omega\)) as given, and solve the transformed system for \(n-1\) relative values \(\mathbf{v}\) in terms of the rate of exploitation (or the wage share).

More intuitively clear, equation system (8.3) can be rewritten as: \[ \mathbf{v}' \left(\mathbf{I} - \mathbf{A}\right) = (1 + \sigma) \mathbf{v}' \mathbf{c} \mathbf{l}', \]

which, after substituting equation (), becomes: \[ \mathbf{v}' \left(\mathbf{I} - \mathbf{A}\right) = \mathbf{l}'. \]

Since the matrix \(\mathbf{A}\) is viable, then matrix \(\left(\mathbf{I} - \mathbf{A}\right)\) is of rank \(n-1\). The solution to this system is: \[ \mathbf{v}' = \mathbf{l}' \left(\mathbf{I} - \mathbf{A}\right)^{-1}. \]

8.7 The Marxist ``transformation’’

Consider now the quantity side of the system. Let \(\mathbf{q}\) be the \((n-1)\) vector of annual gross outputs in physical terms. Then, the scalar \(\tilde{X} = \mathbf{v}' \mathbf{q}\) is the aggregate value of gross output. The aggregate system can now be specified in direct (social-labor) value terms as: \[ \tilde{X} = \mathbf{v}' \mathbf{q},\\ \tilde{X} = \mathbf{v}' \mathbf{A} \mathbf{q} + (1 + \sigma) \mathbf{v}' \mathbf{c} \mathbf{l}' \mathbf{q}, \]

where \(\mathbf{v}' \mathbf{A} \mathbf{q} = \tilde{k}\) is the constant capital, \(\mathbf{v}' \mathbf{c} \mathbf{l}' \mathbf{q} = \tilde{W}\) is the variable capital, and \(\sigma \mathbf{v}' \mathbf{c} \mathbf{l}' \mathbf{q} = \tilde{\Pi}\) is the surplus value.14 In these terms, the surplus value rate and the (flow-flow) profit rate, expressed in direct or non-transformed terms, are given by: \[ \sigma = \frac{\sigma \mathbf{v}' \mathbf{c} \mathbf{l}' \mathbf{q}}{\mathbf{v}' \mathbf{c} \mathbf{l}' \mathbf{q}},\\ r_i = \frac{\sigma (\mathbf{v}' \mathbf{c} \mathbf{l}' \mathbf{q})}{\mathbf{v}' (\mathbf{A} + \mathbf{c} \mathbf{l}') \mathbf{q}}. \]

The first equation simply returns the assumption of the equal surplus value rate across industries. The second equation is less obviously tautological.

Consider now that, as a result of capitalist competition, the surplus value is not directly distributed to capitals in each respective industry. Instead, view the totality of the surplus value as allocated across industries in proportion to the capital stock utilized, which is assumed equal to the flow of capital used up in the period, constant and variable. This proportion is the aggregate or average profit rate, \(r\). This leads back to a capitalist price system, similar to that in equation (8.1) where the workers do not receive the ``complete wage,’’ but only \(w = \mathbf{p}' \mathbf{c} < y\).

More specifically, and letting \(\mathbf{A}^+ \equiv \mathbf{A} + \mathbf{c} \mathbf{l}'\) designate the augmented (with the workers’ consumption coefficients) matrix \(\mathbf{A}\): \[ \mathbf{p}' = (1 + r) \mathbf{p}' \left[\mathbf{A} + \mathbf{c} \mathbf{l}'\right],\\ \mathbf{p}' \mathbf{I} - (1 + r) \mathbf{p}' \left[\mathbf{A} + \mathbf{c} \mathbf{l}'\right] = \mathbf{0}',\\ \mathbf{p}' \left[\mathbf{I} - (1 + r) \left(\mathbf{A} + \mathbf{c} \mathbf{l}'\right)\right] = \mathbf{0}',\\ \mathbf{p}' \left[\mathbf{I} - (1 + r) \mathbf{A}^+\right] = \mathbf{0}'.\tag{8.5} \]

The prices \(\mathbf{p}\) in equation (8.5) Ricardo referred as natural prices'' and Marx as *prices of production*. Marx, following Ricardo, believed that, under rough competitive conditions, these were thecenters of gravity’’ around which the market prices in a capitalist society oscillated over the long run.

9 Conclusions

References

Bródy, András. 1970. Prices, Proportions and Planning: A Mathematical Restatement of the Labor Theory of Value. North-Holland.

Feenstra, Robert C., Robert Inklaar, and Marcel P. Timmer. 2015. “The Next Generation of the Penn World Table.” American Economic Review 105 (10): 3150–82.

Foley, Duncan K. 2009. Understanding Capital: Marx’s Economic Theory. Harvard University Press.

Garegnani, Pierangelo. 1970. “Heterogeneous Capital, the Production Function and the Theory of Distribution.” The Review of Economic Studies 37 (3): 407–36.

Heston, Alan, and Robert Summers. 1996. “International Price and Quantity Comparisons: Potentials and Pitfalls.” The American Economic Review 86 (2): 20–24.

Kravis, Irving B, Alan Heston, and Robert Summers. 1982. World Product and Income: International Comparisons of Real Gross Product. The World Bank.

Lange, Oskar, and Antoni Banasiński. 1969. Theory of Reproduction and Accumulation. Pergamon.

Lenin, Vladimir I. 1917a. “Letters on Tactics.” Collected Works 24, 1977.

———. 1917b. “Statistics and Sociology.” Collected Works 23, 1977.

———. 1921. “The Character of Our Newspapers.” Collected Works 28, 1977.

Marx, Karl. 1867. Capital: A Critique of Political Economy. Vol. I.

———. 1885. Capital: A Critique of Political Economy. Vol. II.

———. 1894. Capital: A Critique of Political Economy. Vol. III.

———. n.d. A Contribution to the Critique of Political Economy.

Morishima, Michio. 1978. Marx’s Economics: A Dual Theory of Value and Growth. CUP Archive.

Pasinetti, Luigi L. 1977. Lectures on the Theory of Production. Columbia University Press.

Shaikh, Anwar. 1974. “Laws of Production and Laws of Algebra: The Humbug Production Function.” The Review of Economics and Statistics, 115–20.

Sraffa, Piero. 1975. Production of Commodities by Means of Commodities: Prelude to a Critique of Economic Theory. Cambridge University Press, 1960.


  1. Marx (n.d.), p. 263.↩︎

  2. Lenin (1917b), pp. 272-3.↩︎

  3. Lenin (1917a), p. 45.↩︎

  4. Lenin (1921), p. 96-7.↩︎

  5. For a more complete reference, see Feenstra, Inklaar, and Timmer (2015), Heston and Summers (1996), and Kravis, Heston, and Summers (1982).↩︎

  6. See, for instance, Shaikh (1974) for a rejection of a conventional approach to the empirical estimation of aggregate production functions. See also Garegnani (1970) for a rejection of the theoretical foundation of the aggregate estimation of the capital stock.↩︎

  7. Marx (1867); Marx (1885); and Marx (1894)’s↩︎

  8. Marx distinguished between a “physical” or use-value capital composition and a value capital composition. The use-value composition captured the relation between, say, the number of machines and the number of workers employed, while the value capital composition captured the relation between the value of the said machines and the value of the labor power of the said workers. This distinction allowed for the possibility of a discrepancy between them, depending on how fast the productivity in the production of means of production was relative to the productivity in the production of the workers’ consumption basket. However, in the further pursuit of his analysis, he explicitly assumed a value composition that mapped one-to-one the physical composition. A value composition that reflected one-to-one the physical composition he called the “organic composition of capital.”↩︎

  9. As Marx notes in (Marx 1867), the capitalists purchase the workers’ labor power for a given period, say two weeks, on credit, since the payment is typically effected, not in advance, but at the end of the pay period, after the workers have already performed their labor under the command of the capitalists.↩︎

  10. Marx did not regard capital as directly productive of use-value, and therefore neither productive of value and surplus value. The term “producitivity” was reserved to designate the labor’s productive power. If capital (i.e. ownership of the bulk of society’s commodified wealth) appeared to be productive, it was so only indirectly, i.e. by appropriating the fruits of labor. In this sense, capital (variable or constant) may be efficacious but not productive.↩︎

  11. Chattel slavery and indenture servitude have been formally abolished in most of the world, but Marxists view the capital relation as a refined, somewhat disguised form of these forms of subjugation.↩︎

  12. One can argue, in defense of Kalecki’s hypothesis, that to the extent the workers save any portion of their income, however minuscule, they are thereby behaving as capitalists and that, insofar as the capitalists spend any portion of their profits, however small, they are thereby behaving like humans, not robots entirely dominated by the drive of capital to accumulate. Marx suggested this in Capital. That said, it is also true that the nonproductive expenditure of the capitalists’ income (luxury consumption, military expenses, etc.) plays an important ideological and political role. Keep in mind that taxes are viewed in this framework as deductions from surplus value \(\Pi\). In this view, the payment of taxes by the workers is regarded as an aspect of their direct exploitation by capital, since the state is assumed to be, in the last analysis, dominated by the interests of the capitalists, as a vehicle of their class struggle. In this framework, all state policies are viewed as forms of wealth redistribution in accordance with political priorities, i.e. as forms of the class struggle (and inter-capitalist competition as well, as the rule of capital is always the rule of some particular capitalist interests at the exclusion of other capitalists and of the rest of society). Though Marx never wrote his book on the state, one can imagine that he would have gone to show that what we now call “monetary policy” (the emission of currency to influence rates of return on capital) is simply a disguised form of “fiscal policy” (the management of taxes and public spending), and that “fiscal policy” is legally sanctioned direct appropriation of some surplus value by the capitalists as a class (or of a group thereof) to allocate it on the basis of their political priorities and, ultimately, advance their interests (accumulation) at the expense of the rest of society.↩︎

  13. Until the point below where the quantity side of the system is introduced, all value flows are per unit of gross output. No further indication of this will be given. Also, in this note, the stock of variable and constant capital utilized by the capitalists is assumed equal to the flow of variable and constant capital spent in the period. In other words, the turnover ratios of the constant capital stock and the wage fund are equal to 1 time per year. Therefore, the period it takes for variable and constant capital to circulate is one year.↩︎

  14. Here, the tilde designates quantities expressed in social-labor value, nontransformed terms, with the exception of the surplus value rate. The ``natural’’ form of appearance of the surplus value rate is as nontransformed or expressed in value terms. When expressed in price-transformed terms, the surplus value rate has a tilde to indicate its distortion.↩︎