[R] Inheritance for S3 classes

Kym Nitschke kym.nitschke at icloud.com
Sun Aug 13 04:39:11 CEST 2017


Thanks to everyone who replied to my query. It is much appreciated. Reading Hadley Wickham's book Advanced R and in particular S3 classes reveals that a class needs to be written allowing inhertinance (by passing the subclass parameter as an argument) and its methods written carefully to function properly with child class. The S3 objects in the package I am using do not appear to have been written with inheritance in mind. I will look for another (less elegant) solution.

Thanks again,

Kym


> On 9 Aug 2017, at 8:48 am, Hadley Wickham <h.wickham at gmail.com> wrote:
> 
> You might find http://adv-r.hadley.nz/s3.html to be helpful (in
> particular, http://adv-r.hadley.nz/s3.html#constructors-1, gives my
> advice about subclass constructors)
> 
> Hadley
> 
> On Mon, Aug 7, 2017 at 7:06 PM, Kym Nitschke <kym.nitschke at icloud.com> wrote:
>> Hi R Users,
>> 
>> I am relatively new to programming in R … so I apologise if my questions appear ‘dumb’.
>> 
>> I am using a package that defines a number of S3 classes. I want to create an S3 child class of one of these classes. The parent class has a contractor with many arguments. I have been having difficulty writing the child class contractor. I have been unable to find a good reference in the internet for writing S3 classes. What I have been able to find out so far is that the child class constructor should call the parent class constructor … which in this case requires passing the argument list with a variable number of arguments (i.e. there are a number of optional arguments) from the child to the parent.
>> 
>> So my first question is … is there an easy way to do this? The match.call function will return a call object .. however the attributes function when used on the call object returns a ‘NULL’.
>> 
>> My second question is … can any one recommend a good reference for object oriented programming in R which includes a comprehensive discussion of the S3 class model?
>> 
>> Thanks
>> 
>> Regards,
>> 
>> Kym
>> ______________________________________________
>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
> 
> 
> 
> -- 
> http://hadley.nz



More information about the R-help mailing list