[R] S4 programming
wwwhsd at gmail.com
Fri Feb 26 03:15:52 CET 2010
xxx at y
On Thu, Feb 25, 2010 at 11:12 PM, Zhang,Yanwei <Yanwei.Zhang at cna.com> wrote:
> Dear all,
> I'm new to S4 classes and have a question on this. I want to use S4 because I want to define explicitly the slots that the new class can have. But other than that, the new class behaves exactly like a list. But this will not allow me to use the generic functions that are already defined for class "list", such as "$", "c", "[[", "names" or "length".
> For example, I defined a new class "abc", and tried to use "$", "length", and "[[", but they do not work (which is shown below). I know I could define these methods for the new class, but is there an easy way to allow this new class to inherit all the functions that work for class "list"? I tried to use contains="list", but this does not work either. Thanks for any help.
>> setClass("abc", representation(x="numeric",y="character",z="numeric"))
>  "abc"
> Error in xxx$a : $ operator not defined for this S4 class
>  1
> Error in xxx[] : this S4 class is not subsettable
> Wayne (Yanwei) Zhang
> Statistical Research
> NOTICE: This e-mail message, including any attachments and appended messages, is for the sole use of the intended recipients and may contain confidential and legally privileged information.
> If you are not the intended recipient, any review, dissemination, distribution, copying, storage or other use of all or any portion of this message is strictly prohibited.
> If you received this message in error, please immediately notify the sender by reply e-mail and delete this message in its entirety.
> [[alternative HTML version deleted]]
> R-help at r-project.org mailing list
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
25° 25' 40" S 49° 16' 22" O
More information about the R-help