This Report analyzes the relationship between the Industrial Production (IIP) and Consumer Price Index(CPI) which represents Inflation in India by Checking whether one’s historical values can influence the others future values, Is there’s any Long-term co-integration or not? and so on…

the Data spans from January 2023 to May 2025 and is Sourced from the Ministry of Statistics and Programme Implementation, Government Of India the tools which are used in this project such as:

  1. ADF Stationary Test
  2. Johansen Test
  3. VAR Modelling
  4. Granger Causality Test
  5. Forecast Error Correction Test

###Raw data presentation of the Consumer Price Index

head(CPI_df)

###Clean and long structured presentation of the CPI data

head(cpi_long)

###Presentation of the Industrial Production Data

head(iip)

###Merging the CPI and the Industrial Production Data

head(iip_cpi_ts)

###Showcasing the CPI inflation and the Industrial Production Data of All Over India

head(iip_cpi_all_over_india)

###Visualization Of The CPI (inflation) and The Industrial Production Data of All Over India

###From the observation, the CPI tends to go up for the next 2-3+ months whenever there’s a sudden drop in the IIP.. For a logical reasoning , one can take an example of the industrial production and it’s supply-demand chain as if industry sector is doing well by matching the demand with producing the enough supply that in contrast , the CPI inflation remains stable due to the fact that there’s no excessive demand or lack of supply to disrupt the market but if there’s a disturbance in the supply-demand chain where the producers are struggling to meet the demand or demand being just too low in comparison to the production capacity then there will be a drop in the Over All IIP and inflation will goes up following next 2-3+ months..


###Running the ADF Stationary Test on the Each Sectors present in the IIP data and re-using the CPI across all the Sectors

###Doing an ADF Stationary Testing in order to find the suitable Sector for the further analysis as in the ADF testing , if something is stationary which means that Data must have a constant Variance , SD, Mean , it’s value should not being due to the randomness but influenced by the historical values, and so on..

###The Conditions for the Sector to be PASS in the “ADF Stationary Test” follows as:

  1. if the P value < 0.005 then it’s stationary.

  2. if the Level Test Stats < Level Crit then it’s stationary.

  3. if a Sector fails to be passed in the stationary test then going to go through the first differencing and if it passes in the first differencing then it will be considered as the stationary and suitable for the further analysis.

  4. if and only if Both the CPI and that Sector’s respective IIP is Stationary only then it will be considered as Overall Stationary and hence Suitable for the further analysis and modelling.

###NOTE:

  1. The CPI test result is reused across all sectors.

  2. This test ensures that only valid, stable time series pairs are carried forward to advanced modeling like Johansen Cointegration, VAR, VECM, and Granger Causality.


###Running the Johansen Test analysis on the Selected Sectors:

## 
## =================================
## JOHANSEN TEST - SECTOR: general 
## 
## =================================
## 
## ###################### 
## # Johansen-Procedure # 
## ###################### 
## 
## Test type: trace statistic , without linear trend and constant in cointegration 
## 
## Eigenvalues (lambda):
## [1] 2.792430e-01 1.745333e-01 1.665335e-16
## 
## Values of teststatistic and critical values of test:
## 
##           test 10pct  5pct  1pct
## r <= 1 |  5.18  7.52  9.24 12.97
## r = 0  | 14.02 17.85 19.96 24.60
## 
## Eigenvectors, normalised to first column:
## (These are the cointegration relations)
## 
##               IIP.l2     CPI.l2   constant
## IIP.l2      1.000000   1.000000    1.00000
## CPI.l2     -0.252379  -4.151306    2.09145
## constant -106.211520 646.138788 -527.15681
## 
## Weights W:
## (This is the loading matrix)
## 
##            IIP.l2      CPI.l2      constant
## IIP.d -0.60049924 -0.03407018  1.086611e-15
## CPI.d -0.01447466  0.02163869 -6.272604e-16
## 
## 
## =================================
## JOHANSEN TEST - SECTOR: mining 
## 
## =================================
## 
## ###################### 
## # Johansen-Procedure # 
## ###################### 
## 
## Test type: trace statistic , without linear trend and constant in cointegration 
## 
## Eigenvalues (lambda):
## [1] 0.2584229 0.1774067 0.0000000
## 
## Values of teststatistic and critical values of test:
## 
##           test 10pct  5pct  1pct
## r <= 1 |  5.27  7.52  9.24 12.97
## r = 0  | 13.35 17.85 19.96 24.60
## 
## Eigenvectors, normalised to first column:
## (These are the cointegration relations)
## 
##                IIP.l2     CPI.l2   constant
## IIP.l2      1.0000000    1.00000    1.00000
## CPI.l2     -0.2236553  -31.13196    1.86182
## constant -100.5948165 5809.24370 -467.10128
## 
## Weights W:
## (This is the loading matrix)
## 
##            IIP.l2       CPI.l2      constant
## IIP.d -0.35284996 -0.010677609  7.603697e-15
## CPI.d -0.01535926  0.002978612 -1.875206e-15

###According to the Johansen Test result findings for the Selected Sectors, it’s evident that there’s no Long Term Co-integration between the IIP and CPI for the each Sectors as r =<0 with test < 5pct.

###Since, there’s no long Term Co-integration found in the Johansen Co-integration Test result findings so the Vector Error Correction Model(VECM)modelling is not suitable for it as VECM requires at least r <= 1 Long-Term Co-integration. Now, the most appropriate Modelling method there left is Vector Auto Regression(VAR) Modelling as it does not requires any long term Co-integration and mainly models the Short-Run Dynamics between the Variables.


###Running Var modelling , Granger Test, Serial test and Normality test on the All Over India Data:

## 
## ==========================================================
## 
##  Sector: general | Optimal Lag(AIC): 3 
## ==========================================================
## 
## 
## Stability Roots
## : [1] 0.7836426 0.7836426 0.7251915 0.7251915 0.6695447 0.6695447
## 
## Granger Causality test: CPI -> IIP
## $Granger
## 
##  Granger causality H0: cpi_diff do not Granger-cause iip_diff
## 
## data:  VAR object var_model
## F-Test = 0.45391, df1 = 3, df2 = 36, p-value = 0.7161
## 
## 
## $Instant
## 
##  H0: No instantaneous causality between: cpi_diff and iip_diff
## 
## data:  VAR object var_model
## Chi-squared = 0.84716, df = 1, p-value = 0.3574
## 
## 
## 
## Granger Causality test: IIP -> CPI
## $Granger
## 
##  Granger causality H0: iip_diff do not Granger-cause cpi_diff
## 
## data:  VAR object var_model
## F-Test = 6.0989, df1 = 3, df2 = 36, p-value = 0.001825
## 
## 
## $Instant
## 
##  H0: No instantaneous causality between: iip_diff and cpi_diff
## 
## data:  VAR object var_model
## Chi-squared = 0.84716, df = 1, p-value = 0.3574
## 
## 
## 
##  Forecast Plot

###According to the Var Stability Roots test, all roots are less than 1 means the VAR model is stable and reliable for the analysis and forecasting.

###From the Granger Causality results, it’s implying that the CPI’s past values does not helps in navigating the IIP’s future values and it’s also indicating that the IIP’s past values does in fact helps in navigating the CPI’s future values as seen in the above Time Series Visualization of CPI vs All Over India IIP Data.

###Even though it’s evident that IIP Granger-Causes the CPI Over time, it’s nowhere implying that IIP values sudden change has any instant or direct effect on the CPI values.


###The Forecast Error Variance Decomposition analysis helps to understand the dynamics behind the forecast’s variable as such how each variable’s shock is getting explained by the forecast and what’s the Quantifying share of the each variable in the forecast’s uncertainty over time.

  1. In the Upper FEVD graph, it’s illustrating that for the IIP 12 month forecast the majority explained by it’s own shock with a little to no contribution of the CPI.

  2. In the Lower FVED graph, it’s illustrating that for the CPI 12 month forecast the CPI initially getting explained by it’s own shock values but over time the Contribution of the IIP starts to go up and This supports the earlier Granger Causality test results, which suggest that past values of IIP help in predicting future values of CPI.


## 
##  Portmanteau Test (asymptotic)
## 
## data:  Residuals of VAR object var_test
## Chi-squared = 35.459, df = 52, p-value = 0.9615

###The high p-value (0.9615) indicates no significant serial correlation in the residuals of the VAR model. This means the model’s residuals behave like white noise and not auto correlating each other by repeating the previous values in some ways, which is a good sign and hence, it passes the Serial Testing.


## $JB
## 
##  JB-Test (multivariate)
## 
## data:  Residuals of VAR object var_test
## Chi-squared = 0.79714, df = 4, p-value = 0.9388
## 
## 
## $Skewness
## 
##  Skewness only (multivariate)
## 
## data:  Residuals of VAR object var_test
## Chi-squared = 0.60694, df = 2, p-value = 0.7383
## 
## 
## $Kurtosis
## 
##  Kurtosis only (multivariate)
## 
## data:  Residuals of VAR object var_test
## Chi-squared = 0.1902, df = 2, p-value = 0.9093

###All three of the Test findings P-values are well above 0.005 which indicating that there’s no such abnormality and Hence, Passes the Normality Test.



###In Summary, this Analysis helps us to find the relationship between the Consumer Price Index (Inflation) and the All Over India Industrial Production and how does they react to each other’s sudden change in numbers and can one’s past values could help in figuring out the other’s future values.