From pburns at pburns.seanet.com  Mon Feb 13 18:18:09 2012
From: pburns at pburns.seanet.com (Patrick Burns)
Date: Mon, 13 Feb 2012 17:18:09 +0000
Subject: [Rd] Overwrite S3 methond from base package
In-Reply-To: <F54EF8F1B477CF448729593FE421F6466EDD5A@HQVEVE0032.nestle.com>
References: <F54EF8F1B477CF448729593FE421F6466EDD5A@HQVEVE0032.nestle.com>
Message-ID: <4F3945D1.2040904@pburns.seanet.com>

The key question is:

 > So, is there any way to overwrite droplevels.factor and
 > droplevels.data.frame from the base package with my functions?

There is "can" and there is "should".

I don't know the answer to "can".

In regard to "should", I think it is a
very very bad idea.

The result that someone gets depends on
whether or not the new package is attached
in the session.  That is a recipe for hours
(or days) of trying to figure out mysterious
behavior.

Much better, I think, is to create a new
generic.

Pat


On 13/02/2012 11:59, Thaler,Thorn,LAUSANNE,Applied Mathematics wrote:
> Dear all,
>
> I am developing a package, which bundles my most frequently used
> functions. One of those is a modified version of droplevels from the
> base package (basically, it preserves any contrast function which was
> used to create the factor, contrast matrices are not kept, for they
> could be wrong if a level is dropped).
>
> In my NAMESPACE file I've the following directives, which should export
> my methods:
>
> S3method(droplevels, factor)
> S3method(droplevels, data.frame)
>
> However, when I load my package and I try to use those functions, the
> dispatching mechanism calls the functions droplevels.factor and
> droplevels.data.frame from the _base package_.
>
> So, is there any way to overwrite droplevels.factor and
> droplevels.data.frame from the base package with my functions? Or do I
> have to create a generic function on my own?
>
> Thanks for your help.
>
> Kind Regards,
>
> Thorn
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>

-- 
Patrick Burns
pburns at pburns.seanet.com
twitter: @portfolioprobe
http://www.portfolioprobe.com/blog
http://www.burns-stat.com
(home of 'Some hints for the R beginner'
and 'The R Inferno')



[Rd] Overwrite S3 methond from base package
Patrick Burns