title: Cumulative count of unique values per group
body: <p>I have a df with names and some dates of eligibility status. I would like to create an indicator of how many unique elig_end_dates a person has, according to time. here is my df:</p>
  
  <pre><code> names date_of_claim elig_end_date
  1    tom    2010-01-01    2010-07-01
  2    tom    2010-05-04    2010-07-01
  3    tom    2010-06-01    2014-01-01
  4    tom    2010-10-10    2014-01-01
  5   mary    2010-03-01    2014-06-14
  6   mary    2010-05-01    2014-06-14
  7   mary    2010-08-01    2014-06-14
  8   mary    2010-11-01    2014-06-14
  9   mary    2011-01-01    2014-06-14
  10  john    2010-03-27    2011-03-01
  11  john    2010-07-01    2011-03-01
  12  john    2010-11-01    2011-03-01
  13  john    2011-02-01    2011-03-01
  </code></pre>
  
  <p>Here is my desired output:</p>
  
  <pre><code> names date_of_claim elig_end_date obs
  1    tom    2010-01-01    2010-07-01   1
  2    tom    2010-05-04    2010-07-01   1
  3    tom    2010-06-01    2014-01-01   2
  4    tom    2010-10-10    2014-01-01   2
  5   mary    2010-03-01    2014-06-14   1
  6   mary    2010-05-01    2014-06-14   1
  7   mary    2010-08-01    2014-06-14   1
  8   mary    2010-11-01    2014-06-14   1
  9   mary    2011-01-01    2014-06-14   1
  10  john    2010-03-27    2011-03-01   1
  11  john    2010-07-01    2011-03-01   1
  12  john    2010-11-01    2011-03-01   1
  13  john    2011-02-01    2011-03-01   1
  </code></pre>
  
  <p>I found this post useful <a href="https://stackoverflow.com/questions/16159253/r-count-unique-values-by-category">R: Count unique values by category</a>, but the answers are given as a seperate table as opposed to being included in the df. </p>
  
  <p>I have also tried this:</p>
  
  <pre><code>df$ob = ave(df$elig_end_date, df$elig_end_date, FUN=seq_along)
  </code></pre>
  
  <p>But this creates a count, and I really just want an indicator. </p>
  
  <p>Thank you in advance</p>
  
  <p><strong>PRODUCT OF STEPHEN'S CODE(which isn't the right code - just posting as a learning point)</strong></p>
  
  <pre><code>names date_of_claim elig_end_date ob
  1    tom    2010-01-01    2010-07-01  2
  2    tom    2010-05-04    2010-07-01  2
  3    tom    2010-06-01    2014-01-01  2
  4    tom    2010-10-10    2014-01-01  2
  5   mary    2010-03-01    2014-06-14  5
  6   mary    2010-05-01    2014-06-14  5
  7   mary    2010-08-01    2014-06-14  5
  8   mary    2010-11-01    2014-06-14  5
  9   mary    2011-01-01    2014-06-14  5
  10  john    2010-03-27    2011-03-01  4
  11  john    2010-07-01    2011-03-01  4
  12  john    2010-11-01    2011-03-01  4
  13  john    2011-02-01    2011-03-01  4
  </code></pre>