Skip to content

Problem with systemfit 0.7-3 and transformed variables

3 messages · Mikko Pakkanen, Arne Henningsen, John Fox

#
The 'systemfit' function in systemfit 0.7-3 CRAN package seems to have a
problem with formulas that contain transformed (eg. log) variables. If I
have my data in a data frame, apparently systemfit doesn't "pass" the
information of where the variables should be taken to the transforming function.

I'm not entirely sure if this is a bug or just a limitation, I was just
surprised when I attempted to estimate a model, which I'd previously
estimated with OLS using 'lm', with 2SLS using 'systemfit' and it didn't
accept those transformations like 'lm' does.

Here's an example: this is, of course, OK:
But, now if I'd like to estimate a model with logarithm of p as a regressor,
an error occurs:
Error in log(p) : Object "p" not found

However, estimating the same formula with OLS using the regular 'lm' is OK:
Transforming an instrument causes the same error too:
Error in log(d) : Object "d" not found

One could certainly just create those transformed variables to avoid the
problem, but it would be much more convenient, if it wasn't necessary,
especially if several regressors are involved.
_              
platform i386-pc-mingw32
arch     i386           
os       mingw32        
system   i386, mingw32  
status                  
major    2              
minor    1.0            
year     2005           
month    04             
day      18             
language R 

Regards,

-Mikko Pakkanen
#
On Wednesday 25 May 2005 11:43, Mikko Pakkanen wrote:
We did not notice this shortcoming of systemfit() so far. Unfortunately, I 
don't have the time in the next few days to look into the code and figure out 
how to enable transformed variables. I suggest that you either create 
transformed variables by hand or you modify the systemfit code to enable this 
and send us the patch. I prefer the second :-) (that's the philosophy of 
open-source software like R: useRs become developeRs).

Best wishes,
Arne

  
    
#
Dear Mikko,

You might try the tsls function in the sem package (which also does 2SLS).

Regards,
 John

--------------------------------
John Fox
Department of Sociology
McMaster University
Hamilton, Ontario
Canada L8S 4M4
905-525-9140x23604
http://socserv.mcmaster.ca/jfox 
--------------------------------