I am currently studying and experimenting the input-output methodology. It is a 1930's method based on national accountings that allows to measure the interindustry flow of good and services.

Currently, I am experimenting it on the french economy. More precisely, I wish to measure the direct and indirect impact of the state-funded renewable energy funding scheme (the state buys renewable energy at a fixed price to producers since it is not currently competitive on the electricity market, as regards to to nuclear electricity production)

I want to measure the direct growth of the industry and the indirect growth of the associated industries that is created by the investment in the said industries due to this funding scheme.

I know how much production from 4 sectors is needed to install 1Gw of renewable electricity production capacity and I know how many Gw are installed each year since 2006.

Now my question aims directly at the input-output table that is provided by the National Institute of Statistics and Economic Studies. It is an extremely serious state-owned institution and I have no doubt that the information (the table) they provide is accurate.

But I have a problem since my calculator ( the R software) returns the information that the table that I must use to execute the calculs is singular. And since the formula that I have to use is the following :

x = [I-A]^-1 . f

... by definition, if this [I-A] matrix is singular, it has no inverse. And that is exactly my problem : my calculator returns a message error that prevents me from get through the calculus : " objet is exactly singular : the determinant of the matrix (the leontiev inverted matrix) is zero on the last line, which means that the inversion calculs cannot be opérated. Any idea of the cause ?

NB : to obtain that matrix, I first created an A matrix of technical coefficients by dividing the original input-output table from INSEE by the total production of each branch. This way, each cell of the A matrix of technical coefficients shows how much of any input is needed in euro for the production of one euro of total output.

Hope someone can direct me toward the answer, best regards.


3 Answers 3


I am not sure exactly what you divided by what, but suppose your input-output table looks like this: $$ A = \left[ \begin{array}{lll} a_{11} & a_{12} & a_{13} \\ a_{21} & a_{22} & a_{23} \\ a_{31} & a_{32} & a_{33} \end{array} \right] $$ If you proceed to divide the first column by $\sum\limits_i a_{i,1}$ the second by $\sum\limits_i a_{i,2}$ and the third by $\sum\limits_i a_{i,3}$ then your new matrix will have 1 as an eigenvalue. (You can show this by showing that the norm of any vector is unchanging upon multiplication with the matrix by straightforward calculation.) This is problematic, because if $s$ is an eigenvector then $$ A \cdot s = s = I \cdot s $$ which implies $$ (I - A) \cdot s = 0 $$ which in turn implies that $I - A$ is not invertible (singular). So my guess would be that the problem is the division.

I thought (incorrectly, see comment below) that input-output models usually deal in physical goods, not the value of physical goods, so the unit of measurement for $a_{11}$ would not be euros by say liters (of milk). In this case you would not have to divide the value of individual inputs by the sum of the value, but the number of goods used in the individual inputs by the total output of a good. This may make your problem go away.

  • $\begingroup$ I-O models like the BEA's benchmark input-output accounts do use the value of goods and services: bea.gov/industry/io_annual.htm $\endgroup$ Jul 9, 2015 at 16:39
  • $\begingroup$ @dismalscience thank your the clarification. I have only encountered these models in a theoretical setting. Fortunately this is still not a problem as long as the value of the good produced differs from the sum of the value of its inputs, so it is still possible that the problem is with the division part. $\endgroup$
    – Giskard
    Jul 9, 2015 at 16:43
  • $\begingroup$ Agreed— so long as each sector produces non-zero value, there should not be a problem. $\endgroup$ Jul 9, 2015 at 16:45

I didn't divided each column by the sum of the column. This would make no sence since the goal is to produce a technical coefficient matrix that links each input (row) needed by the industry (column) in order to produce their output.

I divided each element of the input-output table by the total output of the branch, according to the method presented in Input-Output analysis Foundation and extension : Miller / Blair, Cambridge University press.

This way, in 2006 when the soup industry has

50 € worth of soup production (output)

10 € of inputs of tomatoes

10 € of input of carrots

5 € of inputs of water

The technical coefficients (A) will be :

10/50 = 0,2 = technical coefficient of the tomatoes input

10/50 = 0,2 = technical coefficient of the carrot input

5/50 = 0,1 = technical coefficient of the water input

It can be read like this : if you want to produce one euro of soup, you'ill need to buy 0,2 € of tomatoes, 0,2 € of carrots and 0,1 € of water.

  • $\begingroup$ Okay, it was merely a guess. (I cannot guess data problems.) On Stackexchange if you wish to give additional info you should edit your question. If you want to comment on an answer then write a comment on the answer, not another answer. (Use the "add a comment" a link.) Perhaps this is a low score issue for you, but please try to adhere to the rules. Finally, since you resolved the question in your other answer, please accept that answer to signal that the question is resolved. $\endgroup$
    – Giskard
    Jul 9, 2015 at 18:49

All right kids. You gave me the answer when Dismalscience wrote "this is still not a problem as long as the value of the good produced differs from the sum of the value of its inputs"

... actually, one of the branches had a complete set of zeros in the input table exept for one input and a zero in terms of production ... and another one had a complete set of zeros in terms of inputs and an existing production ... determinants dont like the second case and logic doesn't like the first problem.

I was a data problem after all, thanks for all.

  • $\begingroup$ If your problem is now resolved you can and should accept your own answer. $\endgroup$
    – BKay
    Jul 9, 2015 at 20:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.