Evidently, you want your loop to create new data frames, named (in this example) df_selected1 df_selected2 df_selected3
Yes, it can be done. But to do it you will have to use the get() and assign() functions, and construct the data frame names as character strings. Syntax like df_bs_id[3] does not give you df_bs_id3. R experts typically discourage this kind of approach. A method more consistent with how R is designed to work would be to store the data frames as elements of a list. dflst <- list(df_bs_id1, df_bs_id2, df_bs_id3) nframes <- length(dflist) newdf <- dflst for (id in seq(nframes)) { newdf[id] <- dflst[[ id ]][ , c("column1", "column2")] } Optionally, you could name the list elements: names(dflst) <- paste0('df_selected', seq(nframes)) After which you would have the original data frames as elements of dflst, and the processed data frames as elements of newdf. The loop can be simplified a bit if you don't need to keep copies of the original data frames. With this approach, it would be better create dflst using a loop over the incoming file names, running read.csv() inside the loop. In which case you would never create separate data frames df_bs_id1, df_bs_id2, etc. I have used both approaches at various times over the years, and each has pros and cons. In general, I would recommend the list approach, however, especially if you have a large number of files to process. -Don -- Don MacQueen Lawrence Livermore National Laboratory 7000 East Ave., L-627 Livermore, CA 94550 925-423-1062 Lab cell 925-724-7509 On 5/10/18, 7:33 AM, "R-help on behalf of Marcelo Mariano Silva" <r-help-boun...@r-project.org on behalf of marcelomarianosi...@gmail.com> wrote: Hi, Is it possible use a loop to process many data frames in the same way? For example, if I have three data frames, all with same variables df_bs_id1 <- read.csv("test1.csv",header =TRUE) df_bs_id2 <- read.csv("test2.csv",header =TRUE) df_bs_id3 <- read.csv("test3.csv",header =TRUE) How could I would implement a code loop that , for instance, would select two coluns of interest in a fashion of the code below ? # selecting only 2 columns of interest for (1, 1:3) { df_selected [i] <- df_bs_id[i] [ , c("column1", "column2")] } Tks MMS [[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.