library(openxlsx) sample1<-read.xlsx("http://kanggc.iptime.org/book/data/gdpexp-e.xlsx") y<-ts(sample1$gdp, start=2011, end=2017, frequency=1) c<-ts(sample1$cons, start=2011, end=2017, frequency=1) i<-ts(sample1$inv, start=2011, end=2017, frequency=1) g<-ts(sample1$gov, start=2011, end=2017, frequency=1) x<-ts(sample1$ex, start=2011, end=2017, frequency=1) m<-ts(sample1$im, start=2011, end=2017, frequency=1) d<-ts(sample1$discrep, start=2011, end=2017, frequency=1) z0<-as.matrix(cbind(y,c,i,g,x,m,d)) z0 z1<-matrix(data=NA, nrow=6, ncol=6, byrow=T) z1 for(i in 1:6) { for(j in 1:6) { z1[i,j]<-((z0[i+1,j+1]-z0[i,j+1])/(z0[i+1,1]-z0[i,1]))*100 } } (z1<-round(z1, digits=4)) z2<-matrix(data=NA, nrow=6, ncol=6, byrow=T) for(i in 1:6) { for(j in 1:6) { z2[i,j]<-(z0[i+1,1]-z0[i,1])/(z0[i,1])*z1[i,j] } } (z2<-round(z2, digits=4))