Merge struct with matrix

조회 수: 3 (최근 30일)
GSM
GSM 2021년 7월 21일
댓글: GSM 2021년 7월 22일
Hello,
i have a stuct which holds 12 signals. The signals are represented by frequency, power and a vector for each of the signals as seen in the following picture:
I have another matrix of the signals which passed through some model as seen in the follwoing picture:
I would like to merge the struct with the matrix, so that the struct will hold another column/new field where each struct row corresponts to each matrix row. How can I do this w/o for loop?
Thanks!

채택된 답변

Matt J
Matt J 2021년 7월 21일
편집: Matt J 2021년 7월 21일
You cannot avoid a for-loop altogether, but you can avoid writing your own for-loop as follows:
tmp=num2cell(modelOutputSignal,2); %num2cell has a for-loop inside it.
[yourStruct(1:numel(tmp)).newfield]=deal(tmp{:});
  댓글 수: 2
GSM
GSM 2021년 7월 22일
Perfect ! Thanks a lot!
GSM
GSM 2021년 7월 22일
Matt J ,
Another question.
When i have such struct:
How can I "cut" the 2 left columns "Inputrequency_MHz" and "InputPower_dBm" into some new struct?

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

추가 답변 (1개)

Dhruv G
Dhruv G 2021년 7월 21일
say the structure is named s,
s.outputSignal = modelOutputSignal;
adds the matrix as an element to the structure. You can then reference a matrix element as s.outputSignal(rowNumber, columnNumber)
  댓글 수: 1
GSM
GSM 2021년 7월 22일
I get the following error:
Scalar structure required for this assignment.

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

카테고리

Help CenterFile Exchange에서 Structures에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by