MATLAB: Finding the relationship between three columns

find

I have a data set (attached in zip) downloaded from a database. the first column(date)is the dates column, the second is the id of the firm (RSSD9001), the third is GTA which is the total assets in real term, the fourth(GTAnom) is the nominal total assets and the fifth (implGDPpricedefl) is the implicit GDP price deflator. The relationship between GTA and GTAnom should be theoretically as follows: GTA=GTAnom*(100/implGDPpricedefl); the results however don't match. Is it possible using matlab to find the relationship between GTA,GTAnom and implGDPpricedefl using this long series of data using any kind of solvers?

Best Answer

[num,txt,raw] = xlsread('Sample.csv') ;
gta = num(:,2) ;
gtanorm = num(:,3) ;
impl = num(:,4) ;
%%actual relation
lhs = gta ;
rhs = gtanorm*100./impl ;
%%Get factor
fac = gta.*impl./gtanorm ;
% fac = uniquetol(fac,0.1)
rhs1 = gtanorm*max(fac)./impl ;
%%plot
figure
hold on
plot(lhs,'.r') ;
plot(rhs,'.b') ;
plot(rhs1,'Ob') ;
legend({'GTA','old relation','Newrelation'})
Relation which is holding here is
GTA=GTAnom*108.6180/implGDPpricedefl);