# Shifting signals to the right

조회 수: 102(최근 30일)
Curious Mind 18 Jun 2020
댓글: Adam Danz 19 Jun 2020
Hi, I have a matrix, M which is 10*2000 double (10 rows of signals and each signal contains 2000 variables). I want to shift each of the signal in this matrix to the right by say 1. I have a code (below) that can shift a single signal (that is if M contains a single signal, 1*2000). How do I modify this to shift each signal in M at the same time?
The code code for shifting a single signal is:
p = M;
Shift = 1;
Shifted_M = circshift(p,Shift);
In summary, I want a code that can shift each independent row signal in a matrix and output the shifted matrix as Shifted_M. After that I would like to plot this shifted matrix with the original data to visualize it.
Thanks
##### 댓글 수: 1표시숨기기 없음
Tanveer ul haq 18 Jun 2020
% consider your matrix is M then:
M=[1 2 3; 4 5 6; 7 8 9];
Shift = 1;
Shifted_M = circshift(M',Shift);
rotated_matrix = Shifted_M'

댓글을 달려면 로그인하십시오.

### 채택된 답변

If you'd like to circularly shift the data "A" by "K" positions along the "dim" dimension,
So, you'll need to specify the dimension.
##### 댓글 수: 10표시숨기기 이전 댓글 수: 9
Ah, good! Sometimes describing the problem is more difficult than finding the solution. Glad it all worked out!

댓글을 달려면 로그인하십시오.

R2019b

### Community Treasure Hunt

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

Start Hunting!