Re: [Rd] [R] insert insertRow?

From: Prof Brian D Ripley <>
Date: Fri 21 Jul 2006 - 09:00:54 GMT

[Moved to R-devel, the appropriate list for discussing development of R.]

You can do what you ask for (but micEcon does not provide) more easily and efficiently by indexing, and learning the power of R's indexing seems an important part of mastering the tool.

BTW, as a data frame is thought of as like a table in a RDBMS, so very little you do with one depends on the ordering of rows and columns, both of which are normally accessed by name.

To insert a row after idx, use something like

NewDF <- OldDF[c(1:idx, idx, (idx+1):nrow(OldDF),] NewDF[idx+1,] <- value of new row (as a list) row.mames(NewDF)[idx+1] <- new row name (length-1 character vector)

On Fri, 21 Jul 2006, Marjo en Edwin wrote:

> Dear all,
> In the search for a command to insert a row between other rows in a data
> frame I found that there seems to be no such command in the base R
> package. There is however a very simple function insertRow in the
> micEcon package, that makes use of rbind. I wondered if it would not be
> possible to include the following micEcon functions in the base package:
> insertRow
> insertCol

But insertRow is for a *matrix* and not for a *data frame*, and the former is a rather easier task.

> Since the functions are already there, I would gather this is not a very
> big effort. It would save people that just want to insert rows and
> columns easily to install another two packages (since micEcon needs
> systemfit) or defining the functions themselves.
> I hope my suggestion will be taken into consideration. Whether it will
> be adopted or not, I still think R is a fantastic statistical package
> that I love to use.

We are concerned about bloat, and also the maintenance load of adding convenience functions to R. My view is that they are often just another thing for users to learn and possibly misunderstand, as seems to be the case here.

Brian D. Ripley,        
Professor of Applied Statistics,
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

______________________________________________ mailing list
Received on Fri Jul 21 20:13:13 2006

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Fri 21 Jul 2006 - 18:26:15 GMT.

Mailing list information is available at Please read the posting guide before posting to the list.