Hi All, I have a list that is made up of nested lists, as shown below. I want to remove all rows in each sub-list that start with an empty space, that?s the first entry of a row is blank; for example, on [[1]][[1]][[1]] Remove row 4,on [[1]][[1]][[3]] remove row 5, on [[1]][[2]][[1]] remove row 6, etc.. All rows start with 2 digits/ 2 digits. My formula works on individual sublist but not the whole list.. I know my indexing is wrong, but don?t know how to fix it.> FF[[1]] [[1]][[1]] [[1]][[1]][[1]] [,1] [,2] [,3] [,4] [,5] [1,] "30/20" "AAAAAAAA" ? ? "-89" [2,] "02/20" "AAAAAAAA? ? ? "-98" [3,] "02/20" ?AAAAAAA? ? ? "-84" [4,] ? ? ? ? ? [[1]][[1]][[2]] [,1] [,2] [1,] "02/23" ?AAAAAAAA? : 29" ? [2,] "02/23" ?AAAAAAAA? ." ? [3,] "02/23" ?AAAAAAAA? " ? [4,] "02/23" ?AAAAAAAA? " [[1]][[1]][[3]] [,1] [,2] [,3] [,4] [,5] [,6] [,7] [1,] "01/09" ?AAAAAAAA" ? ? ? "53" [2,] "01/09" ?AAAAAAAA? " ? ? ? "403" [3,] "01/09" ?AAAAAAAA? " ? ? ? "83" [4,] "01/09" ?AAAAAAAA? " ? ? ? "783" [5,] ? ? ?AAAAAAAA? 3042742181" ? ? ? ? [[1]][[2]] [[1]][[2]][[1]] [,1] [,2] [,3] [,4] [,5] [1,] ? ? ? ? ?AAAAAAAA? " [2,] "Standard Purchases" ? ? ? " [3,] "24/90 "AAAAAAAA? ? "243" " [4,] "24/90 "AAAAAAAA? " "143" " [5,] "24/91 "AAAAAAAA? " ? "143" ? [6,] ? ? ? ? "792" [[1]][[2]][[2]] [,1] [,2] [1,] "02/23" ?AAAAAAAA?: 31" ? [2,] "02/23" ?AAAAAAAA?." ? [3,] "02/23" ?AAAAAAAA? " ? [4,] "02/23" ?AAAAAAAA? [5,] "02/23" ?AAAAAAAA? [6,] "02/23" ?AAAAAAAA? 20" [7,] "02/23" ?AAAAAAAA? ? [8,] "02/23" ?AAAAAAAA? "33" [[1]][[3]] [[1]][[3]][[1]] [,1] [,2] [1,] "02/23" ?AAAAAAAA?: 28" ? [2,] "02/23" ?AAAAAAAA?." ? [3,] "02/23" ?AAAAAAAA? " ? [4,] "02/23" ?AAAAAAAA? " [[1]][[3]][[2]] [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [1,] "02/23" ?AAAAAAAA? " ? ? "53" " [2,] "02/24" ?AAAAAAAA? " ? ? " [3,] ? ? ? ? ? ? ? ? "1,241" [4,] "02/24" "AAAAAAAA? ? "33? My Formula,: G <- lapply(FF, function(x) lapply(x, function (y) lapply(y, function(z) z[grepl("^[0-9][0-9]/",z[,1]),]))) The error: Error in z[, 1] : incorrect number of dimensions Thanks in advance--EK
If you learn to use dput() to provide useful examples in your posts, you are more likely to receive useful help. It is rather difficult to make much sense of your messy text, though some brave soul(s) may try to help. Bert Gunter "The trouble with having an open mind is that people keep coming along and sticking things into it." -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip ) On Fri, Nov 2, 2018 at 8:00 AM Ek Esawi <esawiek at gmail.com> wrote:> Hi All, > > I have a list that is made up of nested lists, as shown below. I want > to remove all rows in each sub-list that start with an empty space, > that?s the first entry of a row is blank; for example, on > [[1]][[1]][[1]] Remove row 4,on [[1]][[1]][[3]] remove row 5, on > [[1]][[2]][[1]] remove row 6, etc.. All rows start with 2 digits/ 2 > digits. My formula works on individual sublist but not the whole > list.. I know my indexing is wrong, but don?t know how to fix it. > > > > FF > > [[1]] > [[1]][[1]] > [[1]][[1]][[1]] > [,1] [,2] [,3] [,4] [,5] > [1,] "30/20" "AAAAAAAA" ? ? "-89" > [2,] "02/20" "AAAAAAAA? ? ? "-98" > [3,] "02/20" ?AAAAAAA? ? ? "-84" > [4,] ? ? ? ? ? > [[1]][[1]][[2]] > [,1] [,2] > [1,] "02/23" ?AAAAAAAA? : 29" ? > [2,] "02/23" ?AAAAAAAA? ." ? > [3,] "02/23" ?AAAAAAAA? " ? > [4,] "02/23" ?AAAAAAAA? " > [[1]][[1]][[3]] > [,1] [,2] [,3] [,4] [,5] [,6] [,7] > [1,] "01/09" ?AAAAAAAA" ? ? ? "53" > [2,] "01/09" ?AAAAAAAA? " ? ? ? "403" > [3,] "01/09" ?AAAAAAAA? " ? ? ? "83" > [4,] "01/09" ?AAAAAAAA? " ? ? ? "783" > [5,] ? ? ?AAAAAAAA? 3042742181" ? ? ? ? > [[1]][[2]] > [[1]][[2]][[1]] > [,1] [,2] [,3] [,4] [,5] > [1,] ? ? ? ? ?AAAAAAAA? " > [2,] "Standard Purchases" ? ? ? " > [3,] "24/90 "AAAAAAAA? ? "243" " > [4,] "24/90 "AAAAAAAA? " "143" " > [5,] "24/91 "AAAAAAAA? " ? "143" ? > [6,] ? ? ? ? "792" > [[1]][[2]][[2]] > [,1] [,2] > [1,] "02/23" ?AAAAAAAA?: 31" ? > [2,] "02/23" ?AAAAAAAA?." ? > [3,] "02/23" ?AAAAAAAA? " ? > [4,] "02/23" ?AAAAAAAA? > [5,] "02/23" ?AAAAAAAA? > [6,] "02/23" ?AAAAAAAA? 20" > [7,] "02/23" ?AAAAAAAA? ? > [8,] "02/23" ?AAAAAAAA? "33" > [[1]][[3]] > [[1]][[3]][[1]] > [,1] [,2] > [1,] "02/23" ?AAAAAAAA?: 28" ? > [2,] "02/23" ?AAAAAAAA?." ? > [3,] "02/23" ?AAAAAAAA? " ? > [4,] "02/23" ?AAAAAAAA? " > [[1]][[3]][[2]] > [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] > [1,] "02/23" ?AAAAAAAA? " ? ? "53" " > [2,] "02/24" ?AAAAAAAA? " ? ? " > [3,] ? ? ? ? ? ? ? ? "1,241" > [4,] "02/24" "AAAAAAAA? ? "33? > > My Formula,: > > G <- lapply(FF, function(x) lapply(x, function (y) lapply(y, > function(z) z[grepl("^[0-9][0-9]/",z[,1]),]))) > > The error: Error in z[, 1] : incorrect number of dimensions > > > > Thanks in advance--EK > > ______________________________________________ > R-help at 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. >[[alternative HTML version deleted]]
Jeff Newmiller
2018-Nov-02 15:21 UTC
[R] Remove specific rows from nested list of matrices
Can you supply the output of dput(FF) ? On November 2, 2018 8:00:08 AM PDT, Ek Esawi <esawiek at gmail.com> wrote:>Hi All, > >I have a list that is made up of nested lists, as shown below. I want >to remove all rows in each sub-list that start with an empty space, >that?s the first entry of a row is blank; for example, on >[[1]][[1]][[1]] Remove row 4,on [[1]][[1]][[3]] remove row 5, on >[[1]][[2]][[1]] remove row 6, etc.. All rows start with 2 digits/ 2 >digits. My formula works on individual sublist but not the whole >list.. I know my indexing is wrong, but don?t know how to fix it. > > >> FF > >[[1]] >[[1]][[1]] >[[1]][[1]][[1]] >[,1] [,2] [,3] [,4] [,5] >[1,] "30/20" "AAAAAAAA" ? ? "-89" >[2,] "02/20" "AAAAAAAA? ? ? "-98" >[3,] "02/20" ?AAAAAAA? ? ? "-84" >[4,] ? ? ? ? ? >[[1]][[1]][[2]] >[,1] [,2] >[1,] "02/23" ?AAAAAAAA? : 29" ? >[2,] "02/23" ?AAAAAAAA? ." ? >[3,] "02/23" ?AAAAAAAA? " ? >[4,] "02/23" ?AAAAAAAA? " >[[1]][[1]][[3]] >[,1] [,2] [,3] [,4] [,5] [,6] [,7] >[1,] "01/09" ?AAAAAAAA" ? ? ? "53" >[2,] "01/09" ?AAAAAAAA? " ? ? ? "403" >[3,] "01/09" ?AAAAAAAA? " ? ? ? "83" >[4,] "01/09" ?AAAAAAAA? " ? ? ? "783" >[5,] ? ? ?AAAAAAAA? 3042742181" ? ? ? ? >[[1]][[2]] >[[1]][[2]][[1]] >[,1] [,2] [,3] [,4] [,5] >[1,] ? ? ? ? ?AAAAAAAA? " >[2,] "Standard Purchases" ? ? ? " >[3,] "24/90 "AAAAAAAA? ? "243" " >[4,] "24/90 "AAAAAAAA? " "143" " >[5,] "24/91 "AAAAAAAA? " ? "143" ? >[6,] ? ? ? ? "792" >[[1]][[2]][[2]] >[,1] [,2] >[1,] "02/23" ?AAAAAAAA?: 31" ? >[2,] "02/23" ?AAAAAAAA?." ? >[3,] "02/23" ?AAAAAAAA? " ? >[4,] "02/23" ?AAAAAAAA? >[5,] "02/23" ?AAAAAAAA? >[6,] "02/23" ?AAAAAAAA? 20" >[7,] "02/23" ?AAAAAAAA? ? >[8,] "02/23" ?AAAAAAAA? "33" >[[1]][[3]] >[[1]][[3]][[1]] >[,1] [,2] >[1,] "02/23" ?AAAAAAAA?: 28" ? >[2,] "02/23" ?AAAAAAAA?." ? >[3,] "02/23" ?AAAAAAAA? " ? >[4,] "02/23" ?AAAAAAAA? " >[[1]][[3]][[2]] >[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] >[1,] "02/23" ?AAAAAAAA? " ? ? "53" " >[2,] "02/24" ?AAAAAAAA? " ? ? " >[3,] ? ? ? ? ? ? ? ? "1,241" >[4,] "02/24" "AAAAAAAA? ? "33? > >My Formula,: > >G <- lapply(FF, function(x) lapply(x, function (y) lapply(y, >function(z) z[grepl("^[0-9][0-9]/",z[,1]),]))) > >The error: Error in z[, 1] : incorrect number of dimensions > > > >Thanks in advance--EK > >______________________________________________ >R-help at 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.-- Sent from my phone. Please excuse my brevity.
Thank you Jeff and Bert. I know i have to use dput add provide a reproducible example. The problem is that the output,is huge, has many nested lists, and the info is private. Here is the first line of dput(FF) if it helps: dput(FF) list(list(list(structure(c("12/30 12/30", "01/02 01/02", "01/02 01/02", Thanks again--EK On Fri, Nov 2, 2018 at 11:21 AM Jeff Newmiller <jdnewmil at dcn.davis.ca.us> wrote:> > Can you supply the output of > > dput(FF) > > ? > > On November 2, 2018 8:00:08 AM PDT, Ek Esawi <esawiek at gmail.com> wrote: > >Hi All, > > > >I have a list that is made up of nested lists, as shown below. I want > >to remove all rows in each sub-list that start with an empty space, > >that?s the first entry of a row is blank; for example, on > >[[1]][[1]][[1]] Remove row 4,on [[1]][[1]][[3]] remove row 5, on > >[[1]][[2]][[1]] remove row 6, etc.. All rows start with 2 digits/ 2 > >digits. My formula works on individual sublist but not the whole > >list.. I know my indexing is wrong, but don?t know how to fix it. > > > > > >> FF > > > >[[1]] > >[[1]][[1]] > >[[1]][[1]][[1]] > >[,1] [,2] [,3] [,4] [,5] > >[1,] "30/20" "AAAAAAAA" ? ? "-89" > >[2,] "02/20" "AAAAAAAA? ? ? "-98" > >[3,] "02/20" ?AAAAAAA? ? ? "-84" > >[4,] ? ? ? ? ? > >[[1]][[1]][[2]] > >[,1] [,2] > >[1,] "02/23" ?AAAAAAAA? : 29" ? > >[2,] "02/23" ?AAAAAAAA? ." ? > >[3,] "02/23" ?AAAAAAAA? " ? > >[4,] "02/23" ?AAAAAAAA? " > >[[1]][[1]][[3]] > >[,1] [,2] [,3] [,4] [,5] [,6] [,7] > >[1,] "01/09" ?AAAAAAAA" ? ? ? "53" > >[2,] "01/09" ?AAAAAAAA? " ? ? ? "403" > >[3,] "01/09" ?AAAAAAAA? " ? ? ? "83" > >[4,] "01/09" ?AAAAAAAA? " ? ? ? "783" > >[5,] ? ? ?AAAAAAAA? 3042742181" ? ? ? ? > >[[1]][[2]] > >[[1]][[2]][[1]] > >[,1] [,2] [,3] [,4] [,5] > >[1,] ? ? ? ? ?AAAAAAAA? " > >[2,] "Standard Purchases" ? ? ? " > >[3,] "24/90 "AAAAAAAA? ? "243" " > >[4,] "24/90 "AAAAAAAA? " "143" " > >[5,] "24/91 "AAAAAAAA? " ? "143" ? > >[6,] ? ? ? ? "792" > >[[1]][[2]][[2]] > >[,1] [,2] > >[1,] "02/23" ?AAAAAAAA?: 31" ? > >[2,] "02/23" ?AAAAAAAA?." ? > >[3,] "02/23" ?AAAAAAAA? " ? > >[4,] "02/23" ?AAAAAAAA? > >[5,] "02/23" ?AAAAAAAA? > >[6,] "02/23" ?AAAAAAAA? 20" > >[7,] "02/23" ?AAAAAAAA? ? > >[8,] "02/23" ?AAAAAAAA? "33" > >[[1]][[3]] > >[[1]][[3]][[1]] > >[,1] [,2] > >[1,] "02/23" ?AAAAAAAA?: 28" ? > >[2,] "02/23" ?AAAAAAAA?." ? > >[3,] "02/23" ?AAAAAAAA? " ? > >[4,] "02/23" ?AAAAAAAA? " > >[[1]][[3]][[2]] > >[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] > >[1,] "02/23" ?AAAAAAAA? " ? ? "53" " > >[2,] "02/24" ?AAAAAAAA? " ? ? " > >[3,] ? ? ? ? ? ? ? ? "1,241" > >[4,] "02/24" "AAAAAAAA? ? "33? > > > >My Formula,: > > > >G <- lapply(FF, function(x) lapply(x, function (y) lapply(y, > >function(z) z[grepl("^[0-9][0-9]/",z[,1]),]))) > > > >The error: Error in z[, 1] : incorrect number of dimensions > > > > > > > >Thanks in advance--EK > > > >______________________________________________ > >R-help at 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. > > -- > Sent from my phone. Please excuse my brevity.
It appears that at the bottom of the nesting, so to speak, you have a character matrix. That is, the contents of the [[1]][[1]][[1]] element is a character matrix that, according to the row and column labels, has 4 rows and 5 columns. However, the matrix itself, as printed, has, apparently, 4 column in row one, not 5 -- and five quote marks in row 4, so the number of columns is ambiguous (quote marks have to be balanced). None the less, assuming you really do have character matrices that you're trying to modify, I'd be inclined to take a brute force approach. I would also use for() loops instead of lapply(), because the code will be easier to follow. Do you know, or can you assume, the maximum depth of nesting? Let's say it's three. Here's an outline. I can't test it without an actual object to work on, and it probably has some details wrong. My intent is to present the concept. (I believe I have the 'next' statements in the right place...) for (i1 in length(FF)) { ## the "1" in "ff1" means first level of nesting, not first element of the list ff1 <- FF[[i1]] if ( !is.list(ff1) ) { ## the current element is not nested list {apply the function that removes the appropriate rows} ## this 'next' statement is supposed to move us to the 2nd element of FF next } else { ## the current element (of FF) is a list, therefore, have to loop through its elements for (i2 in length(ff1)) { ff2 <- ff1[[i2]] if ( !is.list(ff2) ) { ## the current element is not a nested list {apply the removal function} next } else { ## the current element is a nested list for (i3 in length(ff2) { ## if I've kept track correctly, we're now looking at the third level down of nesting, ## and if that's the max depth, we don't have to go any further ---- etc, and close all the loops --- This brute force approach consists of nested for() loops. The outer loop is for the top level list. The next nested loop is for the second level lists, within each element of the top level The next nested loop is for the third level lists, within each second level element Since not all elements are nested to the same depth, it has to be noticed when a non-list element is reached. That element gets modified and that level is done; move up to the previous level and continue to its next element. At least, that's an approach that I think can work, but getting all the details correct will take some work. -- Don MacQueen Lawrence Livermore National Laboratory 7000 East Ave., L-627 Livermore, CA 94550 925-423-1062 Lab cell 925-724-7509 ?On 11/2/18, 8:00 AM, "R-help on behalf of Ek Esawi" <r-help-bounces at r-project.org on behalf of esawiek at gmail.com> wrote: Hi All, I have a list that is made up of nested lists, as shown below. I want to remove all rows in each sub-list that start with an empty space, that?s the first entry of a row is blank; for example, on [[1]][[1]][[1]] Remove row 4,on [[1]][[1]][[3]] remove row 5, on [[1]][[2]][[1]] remove row 6, etc.. All rows start with 2 digits/ 2 digits. My formula works on individual sublist but not the whole list.. I know my indexing is wrong, but don?t know how to fix it. > FF [[1]] [[1]][[1]] [[1]][[1]][[1]] [,1] [,2] [,3] [,4] [,5] [1,] "30/20" "AAAAAAAA" ? ? "-89" [2,] "02/20" "AAAAAAAA? ? ? "-98" [3,] "02/20" ?AAAAAAA? ? ? "-84" [4,] ? ? ? ? ? [[1]][[1]][[2]] [,1] [,2] [1,] "02/23" ?AAAAAAAA? : 29" ? [2,] "02/23" ?AAAAAAAA? ." ? [3,] "02/23" ?AAAAAAAA? " ? [4,] "02/23" ?AAAAAAAA? " [[1]][[1]][[3]] [,1] [,2] [,3] [,4] [,5] [,6] [,7] [1,] "01/09" ?AAAAAAAA" ? ? ? "53" [2,] "01/09" ?AAAAAAAA? " ? ? ? "403" [3,] "01/09" ?AAAAAAAA? " ? ? ? "83" [4,] "01/09" ?AAAAAAAA? " ? ? ? "783" [5,] ? ? ?AAAAAAAA? 3042742181" ? ? ? ? [[1]][[2]] [[1]][[2]][[1]] [,1] [,2] [,3] [,4] [,5] [1,] ? ? ? ? ?AAAAAAAA? " [2,] "Standard Purchases" ? ? ? " [3,] "24/90 "AAAAAAAA? ? "243" " [4,] "24/90 "AAAAAAAA? " "143" " [5,] "24/91 "AAAAAAAA? " ? "143" ? [6,] ? ? ? ? "792" [[1]][[2]][[2]] [,1] [,2] [1,] "02/23" ?AAAAAAAA?: 31" ? [2,] "02/23" ?AAAAAAAA?." ? [3,] "02/23" ?AAAAAAAA? " ? [4,] "02/23" ?AAAAAAAA? [5,] "02/23" ?AAAAAAAA? [6,] "02/23" ?AAAAAAAA? 20" [7,] "02/23" ?AAAAAAAA? ? [8,] "02/23" ?AAAAAAAA? "33" [[1]][[3]] [[1]][[3]][[1]] [,1] [,2] [1,] "02/23" ?AAAAAAAA?: 28" ? [2,] "02/23" ?AAAAAAAA?." ? [3,] "02/23" ?AAAAAAAA? " ? [4,] "02/23" ?AAAAAAAA? " [[1]][[3]][[2]] [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [1,] "02/23" ?AAAAAAAA? " ? ? "53" " [2,] "02/24" ?AAAAAAAA? " ? ? " [3,] ? ? ? ? ? ? ? ? "1,241" [4,] "02/24" "AAAAAAAA? ? "33? My Formula,: G <- lapply(FF, function(x) lapply(x, function (y) lapply(y, function(z) z[grepl("^[0-9][0-9]/",z[,1]),]))) The error: Error in z[, 1] : incorrect number of dimensions Thanks in advance--EK ______________________________________________ R-help at 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.
Thank you all, Bert, Jeff, Bill an Don. I realized I made a silly mistake in list indexing. Once I saw Bills? suggestion and was able to wrap my head around indexing recursive lists, I resolved the problem. For future readers, here is the answers, even though the question may not have been clear. I tried Don?s idea and it worked too. To filter out rows that start with an empty (i.e. start with numbers, in this case) string, I used Bill?s suggestion. G <- lapply(FF, function(x) lapply(x, function (y) lapply(y, function(z) z[grepl("^[0-9][0-9]/",z[,1]),]))) S1 <-"\\s?.*\\s|^[0-9]x.*|.*[P-p]oints.*|.*\\sto\\s.*" To remove some unwanted entries, I used this formula. F <- lapply(G, function(x) lapply(x, function (y) lapply(y, function(z) gsub(S1,"",z)))) Thanks again--EK On Fri, Nov 2, 2018 at 11:00 AM Ek Esawi <esawiek at gmail.com> wrote:> > Hi All, > > I have a list that is made up of nested lists, as shown below. I want > to remove all rows in each sub-list that start with an empty space, > that?s the first entry of a row is blank; for example, on > [[1]][[1]][[1]] Remove row 4,on [[1]][[1]][[3]] remove row 5, on > [[1]][[2]][[1]] remove row 6, etc.. All rows start with 2 digits/ 2 > digits. My formula works on individual sublist but not the whole > list.. I know my indexing is wrong, but don?t know how to fix it. > > > > FF > > [[1]] > [[1]][[1]] > [[1]][[1]][[1]] > [,1] [,2] [,3] [,4] [,5] > [1,] "30/20" "AAAAAAAA" ? ? "-89" > [2,] "02/20" "AAAAAAAA? ? ? "-98" > [3,] "02/20" ?AAAAAAA? ? ? "-84" > [4,] ? ? ? ? ? > [[1]][[1]][[2]] > [,1] [,2] > [1,] "02/23" ?AAAAAAAA? : 29" ? > [2,] "02/23" ?AAAAAAAA? ." ? > [3,] "02/23" ?AAAAAAAA? " ? > [4,] "02/23" ?AAAAAAAA? " > [[1]][[1]][[3]] > [,1] [,2] [,3] [,4] [,5] [,6] [,7] > [1,] "01/09" ?AAAAAAAA" ? ? ? "53" > [2,] "01/09" ?AAAAAAAA? " ? ? ? "403" > [3,] "01/09" ?AAAAAAAA? " ? ? ? "83" > [4,] "01/09" ?AAAAAAAA? " ? ? ? "783" > [5,] ? ? ?AAAAAAAA? 3042742181" ? ? ? ? > [[1]][[2]] > [[1]][[2]][[1]] > [,1] [,2] [,3] [,4] [,5] > [1,] ? ? ? ? ?AAAAAAAA? " > [2,] "Standard Purchases" ? ? ? " > [3,] "24/90 "AAAAAAAA? ? "243" " > [4,] "24/90 "AAAAAAAA? " "143" " > [5,] "24/91 "AAAAAAAA? " ? "143" ? > [6,] ? ? ? ? "792" > [[1]][[2]][[2]] > [,1] [,2] > [1,] "02/23" ?AAAAAAAA?: 31" ? > [2,] "02/23" ?AAAAAAAA?." ? > [3,] "02/23" ?AAAAAAAA? " ? > [4,] "02/23" ?AAAAAAAA? > [5,] "02/23" ?AAAAAAAA? > [6,] "02/23" ?AAAAAAAA? 20" > [7,] "02/23" ?AAAAAAAA? ? > [8,] "02/23" ?AAAAAAAA? "33" > [[1]][[3]] > [[1]][[3]][[1]] > [,1] [,2] > [1,] "02/23" ?AAAAAAAA?: 28" ? > [2,] "02/23" ?AAAAAAAA?." ? > [3,] "02/23" ?AAAAAAAA? " ? > [4,] "02/23" ?AAAAAAAA? " > [[1]][[3]][[2]] > [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] > [1,] "02/23" ?AAAAAAAA? " ? ? "53" " > [2,] "02/24" ?AAAAAAAA? " ? ? " > [3,] ? ? ? ? ? ? ? ? "1,241" > [4,] "02/24" "AAAAAAAA? ? "33? > > My Formula,: > > G <- lapply(FF, function(x) lapply(x, function (y) lapply(y, > function(z) z[grepl("^[0-9][0-9]/",z[,1]),]))) > > The error: Error in z[, 1] : incorrect number of dimensions > > > > Thanks in advance--EK