How to number rows of a table by group

4 views (last 30 days)
I have a table with 2-3 rows per subject(PATID). Now, I would like to add a column which indicate if it is the first, second or third training of a patient (as shown in the figure). There must be a simple way, but I cant figure it out.
Thanks for your help
  1 Comment
jonas
jonas on 17 Oct 2018
It should be fairly simple. You should upload some data.

Sign in to comment.

Accepted Answer

jonas
jonas on 17 Oct 2018
Edited: jonas on 17 Oct 2018
Can try something like this:
PATID = [1 1 3 3 3 5 9 9 12]'
T = table(PATID)
out = varfun(@(x)1:length(x),T,'InputVariables','PATID','GroupingVariables','PATID','OutputFormat','cell')
out = [out{:}]'
Just put out in a new column.

More Answers (0)

Products


Release

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!