Repeating array row n times with change of indexes

1 visualización (últimos 30 días)
Joanna Widzinska
Joanna Widzinska el 12 de Sept. de 2019
Respondida: Joanna Widzinska el 24 de Sept. de 2019
Hello everyone,
I have matrix of 1 minute data of the household load (5760x2, where 1st column reflects minutes and second the load). I need to transform data into seconds, where every row will be repeated 60 times with the change of indexes.
Ex.
1min x1 1 x1
2min x2 -----------------> 2 x1
... .....
5760min x5760 60 x1
61 x2
...
120 x2 etc.
I tried many different options and now I think it's involved in multiplying the matrices, but I can't solve this properly.
Can somebody help me? Thanks!

Respuesta aceptada

Shubh Sahu
Shubh Sahu el 18 de Sept. de 2019
Hello Jonna,
Let us suppose, the household data is in ‘a’, to repeat the number of rows repelem function is used:
u(:,2) = repelem(a(:,2),[60]);
u(:,1)=1:(5760*60);
for more information regarding repelem refer the following link:
  3 comentarios
Shubh Sahu
Shubh Sahu el 19 de Sept. de 2019
Have a look on this, may it explains
clc;
clear all;
close all;
a=[1,5;2,7;3,8];% take a 3*2 matrix
u(:,2) = repelem(a(:,2),[60]);
u(:,1)=1:(size(a,1)*60);

Iniciar sesión para comentar.

Más respuestas (1)

Joanna Widzinska
Joanna Widzinska el 24 de Sept. de 2019
It worked! Thank you very much :)

Categorías

Más información sobre Matrices and Arrays 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