Create vector of data frame names from a list of data frames

Viewed 7759

I have a list of data frames, and I want to create a character vector that contains the data frame names that meet a certain criteria. In this case, I want the names of the data frames that contain at least 1 observation. I need these names in a vector for use in another function later on.

The list of data frames is created automatically by the split function. For reproducibility, here's a list of data frames:

df1 <- data.frame(replicate(2,sample(0:1,5,rep=TRUE)))
df2 <- data.frame(replicate(2,sample(0:1,5,rep=TRUE)))
df3 <- data.frame(replicate(0,sample(0:1,5,rep=TRUE))) #empty

mylist <- list(df1, df2,df3) #create list of data frames

mylist2 <- mylist[sapply(mylist, function(x) dim(x)[1]) > 0] #subset list so that df's with no observations are dropped

Now, what I need is a character vector with the names of the data frames in mylist2. (In this example, "df1" and "df2".)

Thanks!

2 Answers
Related