Hi Chris, May be this helps. #Suppose the working directory is `FirstLevel` D <- dir(recursive=TRUE) ?D #[1] "S1/S1data.txt" "S2/S2data.txt" "S3/S3data.txt" sapply(D,function(x) nrow(read.table(x,sep="",header=TRUE))) #S1/S1data.txt S2/S2data.txt S3/S3data.txt #?????????? 20??????????? 20??????????? 20 res <- do.call(rbind,lapply(D,function(x) read.table(x,sep="",header=TRUE))) ?dim(res) #[1] 60? 2 A.K. Dear R/Arun I would like to open 50 text different files (S1data; S2data; S3data etc.) and rbind() them into a single data.frame or matrix. Is there a way doing this with a loop or in some other time-saving manner? `S1data` <- read.table("~/fmridata/FirstLevel/S1/S1data", header=T, quote="\"") `S2data` <- read.table("~/fmridata/FirstLevel/S2/S2data", header=T, quote="\"") `S3data` <- read.table("~/fmridata/FirstLevel/S3/S3data", header=T, quote="\"") etc? to S50 alldata <- rbind(S1data, S2data, S3data etc? to 50) This type of idea (assuming each file has 10 rows (x50=500) and 25 columns): subjects <- c(S1,S2,S3 etc? to S50) alldata <- matrix(nrow = 500, ncol=25, byrow=TRUE) for(i in 1:50) { `<subject[i]>data` <- read.table("~/fmridata/FirstLevel/(subject[i])/<subject[i]>data", header=T, quote="\"") alldata[i,] <- <subject[i]>data } Thanks, Chris