2017-03-09 12 views
0

을 찾을 그래서이 규칙매트랩 제로를 무시하여 최소값 및 특정 조건

으로

 0 0.2000 1.0000 1.0000 1.0000 1.0000 
    0   0   0 0.5000 1.0000 1.0000 
1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 
    0   0   0   0   0 1.0000 
    0   0   0   0 1.0000 1.0000 

=이 데이터

yi = 

    -1 
    1 
    1 
    -2 
    4 
data= 
    1.0000   0 1.0000 0.2000 1.0000 1.0000 
     0   0   0 0.5000 1.0000 1.0000 
    1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 
     0   0   0   0 1.0000   0 
    1.0000   0   0   0 1.0000   0 

내가 짧은 데이터가이

SDATA 같이되는 것을 가지고

  1. yi> = 0 인 경우 출력 = 최대 행 SDATA
  2. 경우 이순신 < 0 theris 2 조건 :

    가. sdata 구성원이 0과 1 만 있으면 출력 = min 행 sdata = 0

    b. 그렇다면 제가 여전히이 시점

    for i=1:5 
         if yi(i)>=0 
          output(i)=max(sdata(i,:)); 
         else 
          output(i)=min(sdata(i,:));  
         end; 
        end; 
        outputnya=output' 
    
    집착이

    output= 
    
        0.2000 
        1.0000 
        1.0000 
        1.0000 
         0 
        1.0000 
    

    같은 출력을 찾을 0 1 다음 출력 = 분 SDATA

제로 제외 사이 번호를 포함 SDATA 부재

+0

은 [0,1]의 데이터입니다. – semm0

+0

예 그 숫자를 포함하여 0과 1 사이의 숫자 –

답변

1

이 시도 :

else 
    minVal = min(sdata(i,sdata(i,:)>0)) 
    if minVal == 1 
    output(i)=min(sdata(i,:)); 
    else 
    output(i) = minVal; 
    end; 
end; 

설명 : sdata(i,:)>0이 0과 1의 테이블을 반환하면 sdata(i,sdata(i,:)>0)은 지정된 조건을 충족하는 요소를 반환합니다.

+0

정말 고마워요, 마침내 내가 원하는 대답을 가지고 .. –