Info

이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.

Data Arrangment in a matrix

조회 수: 2 (최근 30일)
Dinouk Goonewardena
Dinouk Goonewardena 2020년 4월 9일
마감: MATLAB Answer Bot 2021년 8월 20일
I want to insert NaN between (X Y BetaTol ) and the next (X Y BetaTol ) and so on, so it seperates with an NaN column, the code I have is below which does not respshape it properly
S={'X' 'Y' 'beta Tol'};
T= repmat(S,1,7); % to repeat character 7 times
T=reshape([T, nan(size(T,1),2,size(T,3))], 1, {}); % trying to insert NaN in between the characters

답변 (1개)

Vinai Datta Thatiparthi
Vinai Datta Thatiparthi 2020년 4월 16일
Hello Dinouk,
Well, firstly, you're using cell arrays in your code, but you mention matrix in the title. Since you're working with characters, I would continue to use cell arrays.
Your description of the problem is a little hazy, but if you want to insert NaN values in between the sequence, you could simply use a for loop and indexing to get the output -
for i=4:4:28 % This loop work for this specific case, generalize it for other cases
T = {T{1:i-1}, 'NaN', T{i:end}}; % Use indexing to add NaN value in every fourth index
end
This is a simpler approach of the many others to the problem that you have described. The output would be a [1x28] cell array.
Hope this helps!

제품

Community Treasure Hunt

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

Start Hunting!

Translated by