How to group multiple data points (rows) from the same person into one row (containing the average) in a table?

6 views (last 30 days)
Hi, I have a dataset that has individual rows for the reaction time to a computer-based task for different individuals (participant ID). The ParticipantID column has multiple participants in it, the first one being 12131. Additionally, they repeat this task on more than one occasion (Repeat column). I would like to create a table that has the mean ResponseTime per participant per repeat. So in the end I would have a table with 'ParticipantID' 'Repeat' 'ResponseTime' as the variables, where each participant would have repeats 1, 2, 3 etc... currently where the RepeatNumber is the same (i.e. always number 1 in this example), this shows the response to multiple 'trials' within the first 'repeat' of the task and I want to group them together to get the mean response time for the first repeat of this task. Could anyone help me with the code please?
I am very new to this, so any help would be much appreciated. Many thanks!
  1 Comment
Scott MacKenzie
Scott MacKenzie on 7 May 2021
It would help if you posted your data along with the question.
Also, you should s at least try to develop some code for a solution. Then, post what you've done along with questions on specific issues you are struggling with. Your question, as posted, amount to this: here's a snippet of my data, here's what I want to do, show me -- not good!

Sign in to comment.

Accepted Answer

Asvin Kumar
Asvin Kumar on 10 May 2021
Edited: Asvin Kumar on 11 May 2021
This seems like just the use case for findgroups and splitapply. Both the linked pages have good examples that should help you get started.
The following example shows how to use these two functions on a table: Split Table Data Variables and Apply Functions
You can also have a look at this page which explains the generic split-apply-combine workflow: Grouping Variables to Split Data.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!