title: Applying dplyr's rename to all columns while using pipe operator
body: <p>I'm working with an imported data set that corresponds to the extract below:</p>
  
  <pre><code>set.seed(1)
  dta &lt;- data.frame("This is Column One" = runif(n = 10),
                       "Another amazing Column name" = runif(n = 10),
                       "!## This Columns is so special€€€" = runif(n = 10),
                      check.names = FALSE)
  </code></pre>
  
  <p>I'm doing some cleaning on this data using <code>dplyr</code> and I would like to change column names to syntatically correct ones and remove the punctuation as a second step. What I tried so far:</p>
  
  <pre><code>dta_cln &lt;- dta %&gt;% 
      rename(make.names(names(dta)))
  </code></pre>
  
  <p>generates an error:</p>
  
  <blockquote>
  <pre><code>&gt; dta_clean &lt;- dta %&gt;% 
  +     rename(make.names(names(dta)))
  Error: All arguments to rename must be named.
  </code></pre>
  </blockquote>
  
  <h1>Desired result</h1>
  
  <p>What I wan to achieve can be done in base:</p>
  
  <pre><code>names(dta) &lt;- gsub("[[:punct:]]","",make.names(names(dta)))
  </code></pre>
  
  <p>which would return:</p>
  
  <blockquote>
  <pre><code>&gt; names(dta)
  [1] "ThisisColumnOne"          "AnotheramazingColumnname" "XThisColumnsissospecial"
  </code></pre>
  </blockquote>
  
  <p>I want to achieve the same effect but using <code>dyplr</code> and <code>%&gt;%</code>.</p>