title: Dplyr mutate duplicates list values when trying to index
body: <p>Let's say I start with a dataset like this (it's from Gallup). I want to pull the year and date out of the dataset and into a new column. So I try to split the date string...</p>
  
  <pre><code>index   date         R  D
  1   2018 Jan 2-7    35  50  
  2   2017 Dec 4-11   41  45  
  3   2017 Nov 2-8    39  46  
  4   2017 Oct 5-11   39  46  
  5   2017 Sep 6-10   45  47  
  6   2017 Aug 2-6    43  46
  </code></pre>
  
  <p>.. using mutate</p>
  
  <pre><code>dataset &lt;- data %&gt;% 
        mutate(Y = strsplit(date, split = " ")[[1]][1]) %&gt;%
        mutate(M = strsplit(date, split = " ")[[1]][2])
  </code></pre>
  
  <p>But strsplit, rather than operate on the date row, seems to operate on a list of all column values.</p>
  
  <p>So I end up with the [[1]] subset accessor just grabbing the first row value, rather than a the list entry relevant to each row.</p>
  
  <pre><code>index   date         R  D    Y        M
  1   2018 Jan 2-7    35  3   2018    Jan
  2   2017 Dec 4-11   41  3   2018    Jan
  3   2017 Nov 2-8    39  3   2018    Jan
  4   2017 Oct 5-11   39  3   2018    Jan
  5   2017 Sep 6-10   45  3   2018    Jan
  6   2017 Aug 2-6    43  3   2018    Jan
  </code></pre>
  
  <p>How can I split the string so an extrapolate the value from the list for each row? Using index as a subset accessor doesn't work.</p>