Now that I take a better look at your function, I don't understand everything, but this should work (it works for me, if I understood correctly at least what you're looking for):

add.col <- function(df, new.col, name) {
    n.row <- dim(df)[1]
    length(new.col) <- n.row
    test <- cbind(df, new.col)
    names(test) <- c(names(df), name)
    return(test)
}

There might be better/easier/nicer solutions.

HTH,
Ivan



Le 6/17/2010 11:25, Ralf B a écrit :
  Sorry, its late and I am getting tired ;)

I modified based on your suggestion:

#combine data
add.col<- function(df, new.col, name) {
        n.row<- dim(df)[1]
        length(new.col)<- n.row
         names(new.col)<- name
        cbind(df, new.col)
}
data<- data.frame(stuff1=as.numeric(d2$points))
data<- add.col(data, as.numeric(d1$morepoints), "stuff2")

but the column in the data frame is still called 'new.col' and not 'stuff2'.

Any further ideas?

Best,
Ralf



On Thu, Jun 17, 2010 at 5:14 AM, Ivan Calandra
<ivan.calan...@uni-hamburg.de>  wrote:
Hi,

I haven't check much of what you wrote, so just a blind guess. What about in
the function's body before cbind():
names(new.col)<- "more stuff"
?

HTH,
Ivan

Le 6/17/2010 11:09, Ralf B a écrit :
Hi all,

probably a simple problem for you but I am stuck.

This simple function adds columns (with differing length) to data frames:

add.col<- function(df, new.col) {
        n.row<- dim(df)[1]
        length(new.col)<- n.row
        cbind(df, new.col)
}

Now I would like to extend that method. A new parameter 'name' shouild
allow people to pass in a name for that new column. Is that possible
and how can this be achieved?

Example:

myData<- data.frame(c(1,2,3))
add.col(myData, c(5,6,7,8), 'more stuff')

adds a new column named 'more stuff' to the dataframe myData.


Any ideas?

Best,
Ralf

______________________________________________
R-help@r-project.org mailing list
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.


--
Ivan CALANDRA
PhD Student
University of Hamburg
Biozentrum Grindel und Zoologisches Museum
Abt. Säugetiere
Martin-Luther-King-Platz 3
D-20146 Hamburg, GERMANY
+49(0)40 42838 6231
ivan.calan...@uni-hamburg.de

**********
http://www.for771.uni-bonn.de
http://webapp5.rrz.uni-hamburg.de/mammals/eng/mitarbeiter.php

______________________________________________
R-help@r-project.org mailing list
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.


--
Ivan CALANDRA
PhD Student
University of Hamburg
Biozentrum Grindel und Zoologisches Museum
Abt. Säugetiere
Martin-Luther-King-Platz 3
D-20146 Hamburg, GERMANY
+49(0)40 42838 6231
ivan.calan...@uni-hamburg.de

**********
http://www.for771.uni-bonn.de
http://webapp5.rrz.uni-hamburg.de/mammals/eng/mitarbeiter.php

______________________________________________
R-help@r-project.org mailing list
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.

Reply via email to