title: dplyr - using column names as function arguments
body: <p>With a data frame,  I'm using dplyr to aggregate some column like below.</p>
  
  <pre><code>&gt; data &lt;- data.frame(a=rep(1:2,3), b=c(6:11))
  &gt; data
    a  b
  1 1  6
  2 2  7
  3 1  8
  4 2  9
  5 1 10
  6 2 11
  &gt; data %&gt;% group_by(a) %&gt;% summarize(tot=sum(b))
  # A tibble: 2 x 2
        a   tot
    &lt;int&gt; &lt;int&gt;
  1     1    24
  2     2    27
  </code></pre>
  
  <p>This is perfect. However I want to create a re-usable function for this such that a column name can be passed as argument.</p>
  
  <p>Looking at answers to related questions like <a href="https://stackoverflow.com/a/29042577/3206440">here</a>, I tried the following.</p>
  
  <pre><code>sumByColumn &lt;- function(df, colName) {
    df %&gt;%
    group_by(a) %&gt;%
    summarize(tot=sum(colName))
    df
  }
  </code></pre>
  
  <p>However I'm not able to get it working. </p>
  
  <pre><code>&gt; sumByColumn(data, "b")
  
   Error in summarise_impl(.data, dots) : 
    Evaluation error: invalid 'type' (character) of argument. 
  
  &gt; sumByColumn(data, b)
  
   Error in summarise_impl(.data, dots) : 
    Evaluation error: object 'b' not found. 
  &gt; 
  </code></pre>