Separate and Operate on Cells Based on Label

2 visualizaciones (últimos 30 días)
Brian Tomblin
Brian Tomblin el 8 de Jul. de 2016
Comentada: Brian Tomblin el 12 de Jul. de 2016
Hello,
I need assistance with separating out a cell array consisting of text labels within each cell based on the label. I have tried the findgroups function, but I would like to have the labels remain for further operations instead of the generated numbers for the labels (for example, I'd want to work with group "bicep" instead of group "1"). If I am misunderstanding how findgroups works and that is a possible outcome with that function, please explain how, as I am still new to Matlab.
Secondly, once those cells are separated based on the label, I need some way to go through all of the groups separately with a function (in this case, a mean of the unique values in corresponding cells). I understand how to do the function if all values were in the same group, but I am confused if working with numerous groups at the same time.
If there's anything else needed to help with my case, please ask and I can give more information. Thank you. (see comments)
  6 comentarios
per isakson
per isakson el 12 de Jul. de 2016
Editada: per isakson el 12 de Jul. de 2016
"I'd want to work with group "bicep" instead of group "1"" &nbsp means that you you want to use statements like
plot( ..., 'bicep' )
How large is the total dataset, typically?
Brian Tomblin
Brian Tomblin el 12 de Jul. de 2016
It can vary depending on how much data is given. Currently working with around 14 labels. A way to group the data such that naming each individual label during plotting would be unnecessary would be nice, if possible. Along the idea that the groups are separated, but still remain under a variable LABELS or something like that, so plot(Labels) would go through each group individually and plot them without having to name them. If that's not a possibility, it can be worked around.

Iniciar sesión para comentar.

Respuestas (1)

Image Analyst
Image Analyst el 10 de Jul. de 2016
Try the ismember() function. To get the means, you can use grpstats().
  3 comentarios
Stephen23
Stephen23 el 11 de Jul. de 2016
Editada: Stephen23 el 11 de Jul. de 2016
Have a look at ismember's second output. You could use that output in accumarray to group/process your data together.
Brian Tomblin
Brian Tomblin el 11 de Jul. de 2016
Editada: Brian Tomblin el 11 de Jul. de 2016
Using the Lia or Lia,Locb function requires a string instead of cells, which doesn't work due to the long list of text that ends up in a single cell. I cannot seem to find the members when all of them are together in the same cell. Possibly text was not intended for the ismember() function.

Iniciar sesión para comentar.

Categorías

Más información sobre Text Data Preparation en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by