 <p>We can use <code>uniqueN</code> from <code>data.table</code></p> <pre><code>library(data.table) setDT(Database)[, NumDates := uniqueN(Date) , by = UserId] Database # UserId Hour Date NumDates #1: 1 18 01.01.2016 3 #2: 1 18 01.01.2016 3 #3: 1 14 02.01.2016 3 #4: 1 14 03.01.2016 3 #5: 2 21 03.01.2016 2 #6: 2 8 05.01.2016 2 #7: 2 8 05.01.2016 2 #8: 3 23 05.01.2016 1 </code></pre>