How can I merge successive row values (sum of the values) of the column Y according to a condition in column X?

1 visualización (últimos 30 días)
Dear,
Hope everyone is doing well!
My issue is: I have a two data columns (X and Y) and datime column (10 min interval). I want to merge the successive row values (sum) of column Y if the corresponding values of column X are 0. Otherwise, if one of the X row equals to 1, then no merge.
Knowing that X contains only 0 and 1 values.
Thank you for your collaboration.
  2 comentarios
Matt J
Matt J el 19 de Abr. de 2022
Doesn't that mean that all the Y values in the data you've shown will be summed? There are no ones in the X column at all, so why have you designated only the specific rows circled in red?

Iniciar sesión para comentar.

Respuestas (1)

Peter Perkins
Peter Perkins el 18 de Mayo de 2022
You want to do grouped sums, where the groups are defined by consecutive zeros in X. Once you have the groups defined as a new variable in (what should be) a timetable, it's a simple matter of calling groupsummary. Usually defining groups like that involves tricks with cumsum and diff. But without a clear example of what you have and what you want, I won't hazard a guess.

Categorías

Más información sobre Tables en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by