[R] names.data.frame?

Andrew Simmons @kw@|mmo @end|ng |rom gm@||@com
Wed Nov 3 19:54:26 CET 2021


First, your signature for names.pm is wrong. It should look something more
like:


names.pm <- function (x)
{
}


As for the body of the function, you might do something like:


names.pm <- function (x)
{
    NextMethod()
}


but you don't need to define a names method if you're just going to call
the next method. I would suggest not defining a names method at all.


As a side note, I would suggest making your class through the methods
package, with methods::setClass("pm", ...)
See the documentation for setClass for more details, it's the recommended
way to define classes in R.

On Wed, Nov 3, 2021 at 2:36 PM Leonard Mada via R-help <r-help using r-project.org>
wrote:

> Dear List members,
>
>
> Is there a way to access the default names() function?
>
>
> I tried the following:
>
> # Multi-variable polynomial
>
> p = data.frame(x=1:3, coeff=1)
>
> class(p) = c("pm", class(p));
>
>
> names.pm = function(p) {
> # .Primitive("names")(p) # does NOT function
> # .Internal("names")(p) # does NOT function
> # nms = names.default(p) # does NOT exist
> # nms = names.data.frame(p) # does NOT exist
> # nms = names(p); # obvious infinite recursion;
> nms = names(unclass(p));
> }
>
>
> Alternatively:
>
> Would it be better to use dimnames.pm instead of names.pm?
>
> I am not fully aware of the advantages and disadvantages of dimnames vs
> names.
>
>
> Sincerely,
>
>
> Leonard
>
> ______________________________________________
> R-help using 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.
>

	[[alternative HTML version deleted]]



More information about the R-help mailing list