error using contains function
조회 수: 3 (최근 30일)
이전 댓글 표시
when I use contains function in a loop it show me that error message, even though Raw is a cell array, and also the compilation complete and the code after if contains(Raw(i,2),serie)==1 works well.
is there a solution for that ?
댓글 수: 5
Matt J
2019년 4월 22일
편집: Matt J
2019년 4월 22일
You need to provide the variables (in a .mat file) that would let us run the important section of the code as follows:
load yourMATFile.mat
sizeRaw=size(Raw);
for i=2 : sizeRaw(1,1)
if contains(Raw(i,2),serie)==1
for j=2 : rowRMS(1,1)
if contains(Raw(i,1),RMS(j,1))==1
if contains(Raw(i+1,8),MeasTypeID)==1
Raw(i+1,9)=RMS(j,2);
else
if contains(Raw(i+2,8),MeasTypeID)==1
Raw(i+2,9)=RMS(j,2);
else
if contains(Raw(i+3,8),MeasTypeID)==1
Raw(i+3,9)=RMS(j,2);
end
end
end
end
end
end
end
채택된 답변
Adam Danz
2019년 4월 22일
편집: Adam Danz
2019년 4월 22일
I can see in your screen shot of workspace variables that your "Raw" array contains mostly NaN values.
According to your error message, the first argument of contains() must be a string array, char vector, or cell array of char vectors. "Raw" appears to be a cell array with lots of NaNs.
You probably want to just skip iterations where the input to contains() includes NaN values (or you might want to use a different method).
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Matrix Indexing에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!