[R] Help with R: functions

TEMPL Matthias Matthias.Templ at statistik.gv.at
Mon Jan 30 14:36:01 CET 2006


What is wrong with your first solution:

st <-function(x,y){
  ## y ... Response
  ## x ... terms
  rcc<-coef(lm(y ~ x))
  plot(x,y)
  abline(rcc[1],rcc[2])
  }
  st(dats$visual24,dats$visual52)

Or use attach:

st <-function(data,x,y){
  attach(data)
  rcc<-coef(lm(x~y))
  plot(x,y)
  abline(rcc[1],rcc[2])
  detach(data)
  }
  st(dats,visual24,visual52)
 
 Best,
Matthias

> -----Ursprüngliche Nachricht-----
> Von: r-help-bounces at stat.math.ethz.ch 
> [mailto:r-help-bounces at stat.math.ethz.ch] Im Auftrag von 
> Pryseley Assam
> Gesendet: Montag, 30. Jänner 2006 14:14
> An: r-help at stat.math.ethz.ch
> Betreff: [R] Help with R: functions
> 
> 
> 
> Hello R-users
>    
>   I am new to R and trying to write some functions. I have 
> problems writing functions that takes a data set as an 
> arguement and uses variables in the data. I illustrate my 
> problem with a small example below:
>    
>    sample data   #------------------
>   visual24<-rnorm(30,3,5)
>   visual52<-rt(30,7)
>   dats<- data.frame(cbind(visual24,visual52))
>   remove(visual24, visual52)
>    
>   # first code
>   #--------------
>   st <-function(data,x,y){
>   rcc<-coef(lm(y~x))
>   plot(x,y)
>   abline(rcc[1],rcc[2])
>   }
>   st(data=dats,x=dats$visual24,y=dats$visual52)
>    
>   This code works fine, but with such a code the data as an 
> arguement to the funtion is not necessary. 
>   However, i wish to write a function that reads the 
> variables from the data directly.
>   I tried using the function below but it does not work. 
>    
>   # second code
>   #------------------
>   st <-function(data,x,y){
>   rcc<-coef(lm(data$y~data$x))
>   plot(data$x,data$y)
>   abline(rcc[1],rcc[2])
>   }
>   st(dats,visual24,visual52)
>    
>   I wish to inquire if any one has an idea of what i need to 
> adjust in the function so that it works.
>   I believe that the referencing $x or $y in the function is 
> not doing the correct thing.
>    
>   Better still, will it be a problem if i code the functions 
> as in the first code above?
>   I mean given that they will be used to create a library
>    
>   Best regards
>   Pryseley
>    
> 
> 
> 		
> ---------------------------------
> 
> 
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list 
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read 
> the posting guide! http://www.R-project.org/posting-guide.html
>




More information about the R-help mailing list