Assuming that the elements of mylist are data frames, try this: mylist <- lapply(mylist, function(e) { names(e) <- paste0('pop',1:12) ; e})
With certain exceptions, the result of a function is the result of the last expression in the function body. As you defined it, the last expression was colnames(e) <- paste0('pop',1:12) that is, the column names (not "labels", but names). If the elements really are data frames, then names() can be used instead of colnames(), but colnames() is ok. I don't know if one of them is better than the other for data frames. -Don -- Don MacQueen Lawrence Livermore National Laboratory 7000 East Ave., L-627 Livermore, CA 94550 925-423-1062 On 3/30/15, 6:54 AM, "Vikram Chhatre" <crypticline...@gmail.com> wrote: >> summary(mygenfreqt) > Length Class Mode >dat1.str 59220 -none- numeric >dat2.str 59220 -none- numeric >dat3.str 59220 -none- numeric > >> head(mylist[[1]]) > 1 2 3 4 5 6 7 8 9 10 11 > 12 >L0001.1 0.60 0.500 0.325 0.675 0.600 0.500 0.500 0.375 0.550 0.475 0.350 >0.275 >L0001.2 0.40 0.500 0.675 0.325 0.400 0.500 0.500 0.625 0.450 0.525 0.650 >0.725 > >I want to change 1:12 to pop1:pop12 > >mylist<- lapply(mylist, function(e) colnames(e) <- paste0('pop',1:12)) > >What this is doing is replacing the data frames with just names >pop1:pop12. I just want to replace the column labels. > >Thanks for any suggestions. > > [[alternative HTML version deleted]] > >______________________________________________ >R-help@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. ______________________________________________ R-help@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.