title: performing multiple functions on every columns and rows of a list of dataframes using their names stored in a list
body: <p><strong>DATA</strong></p>
  
  <pre><code>foo &lt;- dplyr::tibble(a=c("a","b",NA),b=c("a","b","c"),colC=NA)
  bar &lt;- dplyr::tibble(a=c("a","b",NA),b=c("a","b","c"),colC=NA)
  all_tibbles &lt;- c("foo","bar")
  lapply(mget(all_list), function(y) sapply(y, function(x) all(is.na(x))))
  </code></pre>
  
  <blockquote>
  <pre><code>$foo
  # A tibble: 3 x 3
    a     b     colC 
    &lt;chr&gt; &lt;chr&gt; &lt;lgl&gt;
  1 a     a     NA   
  2 b     b     NA   
  3 NA    c     NA   
  
  $bar
  # A tibble: 3 x 3
    a     b     colC 
    &lt;chr&gt; &lt;chr&gt; &lt;lgl&gt;
  1 a     a     NA   
  2 b     b     NA   
  3 NA    c     NA
  </code></pre>
  </blockquote>
  
  <p>I would like to remove all columns from every data frame in <code>mget(all_list)</code>
  This created the logical vector using base apply functions.</p>
  
  <pre><code>lapply(mget(all_tibbles), function(y) sapply(y, function(x) all(is.na(x))))
  </code></pre>
  
  <p>Then remove all rows with the minimum number of missing values</p>
  
  <pre><code>lapply(mget(all_tibbles),function(x)
  x[-which.min(rowSums((!is.na(x)))),])
  </code></pre>
  
  <p>and then store these back in the same variables foo and bar. I have a large character vector with tibble names btw.
  Can I use a tidyr package to simplify things? base functions are fairly complicated, and am trying to avoid for loops</p>