필터 지우기
필터 지우기

reading an array

조회 수: 2 (최근 30일)
Sayanta
Sayanta 2012년 5월 24일
답변: Patel Keyur 2022년 1월 7일
Hello All, I Have code below. I want to create an array with elements [ 5, 10, 15, 20,25, 30, 35, 40, 45, 50, 55, 60, 65, 75, 80, 85, 90, 95, 100] and I want replace if statement if (stateCount(n)> 5 && stateCount(n)<= 10) with value from an array 5 and 10. How can I do that. Any tips will gladly welcome
stateHit = zeros(length(stateCount),20);
for n = 1:length(stateCount)
if (stateCount(n)<= 5)
stateHit(n,1) = 1;
else
if (stateCount(n)> 5 && stateCount(n)<= 10)
stateHit(n,2) = 1;
else
if (stateCount(n)>10 && stateCount(n)<= 15)
stateHit(n,3) = 1;
else
if (stateCount(n)> 15 && stateCount(n)<= 20)
stateHit(n,4) = 1;
else
if (stateCount(n)> 20 && stateCount(n)<= 25)
stateHit(n,5) = 1;
else
if (stateCount(n)> 25 && stateCount(n)<= 30)
stateHit(n,6) = 1;
end
end
end
end
end
end
end
Many thanks in advance
SM

답변 (4개)

Walter Roberson
Walter Roberson 2012년 5월 25일
YourDividingArray = 5:5:100;
[bincounts, HistcIndex] = histc(StateCount, [-inf YourDividingArray(2:end)]);
StateHit( sub2ind(size(StateHit), HistcIndex, 1:size(StateHit,2)) ) = 1;
Or if you prefer,
HistcIndex = max(1, floor(StateCount / 5));
StateHit( sub2ind(size(StateHit), HistcIndex, 1:size(StateHit,2)) ) = 1;

Sayanta
Sayanta 2012년 5월 25일
Hi Walter,
Thanks for your answer. I couldn't understand what your code will do, could you please explain, How can I implement it my code. Sorry I'm have elementary level in matlab
Thanks in advance
Sm

Sayanta
Sayanta 2012년 5월 25일
Hi Walter, I use code like that but I have error
??? Undefined function or variable 'StateHit'.
Error in ==> short_code_test at 4 StateHit( sub2ind(size(StateHit), HistcIndex, 1:size(StateHit,2)) ) = 1;
Here is the code I try
StateCount = value; HistcIndex = max(1, floor(StateCount / 5)); StateHit( sub2ind(size(StateHit), HistcIndex, 1:size(StateHit,2)) ) = 1; disp(StateHit);
Thanks for help in advance
SM
  댓글 수: 1
Walter Roberson
Walter Roberson 2012년 5월 25일
Typo on my part. My StateHit should be stateHit to be consistent with your code. I assume here your line
stateHit = zeros(length(stateCount),20);

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


Patel Keyur
Patel Keyur 2022년 1월 7일
How to read array in matlab and this array value store in any number device?

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by