2012-09-17 3 views
3

가능한 중복을 측정 무시 :
MATLAB: Using interpolation to replace missing values (NaN)매트랩 보간 (interpn) NaN이

I는 interpn 명령을 사용하여 여러 크기의 데이터를 보간하고 싶다.

문제는 데이터에 NaN이 포함되어 있다는 것입니다. 따라서, 일부 차원에서 matlab에 삽입하지 못하도록하는 데이터 점이 2 개 미만입니다. 이 경우 NaN 값을 반환하도록 interpn에 요청합니다.

예 : 내 데이터는 어떻게 든 보이는 한 차원 속으로 NaN의의가 있기 때문에 보간 할 때이

val(:,:,1) = 
    -2.3810 -0.9365 
    NaN -0.6910 


    val(:,:,2) = 
    -2.3354 -0.9271 
    NaN -0.6859 

matlab에 오류가 있습니다 좋아한다. matlab에이 오류를 무시하고 대신 NaN의 형식 인 interpn 함수를 반환하겠습니다.

답변

0

NaN을 찾는 중개 기능을 도입 할 수 있습니다. true를 돌려줍니다 NaN의, 그렇지 않으면 함수를 호출하는 경우 any(any(any(isnan(val)))를 통해 NaN를위한

검색 :

그래서 대신 interpn 호출하는 다음 작업을 수행하는 함수를 호출 할 수 있습니다.

interpn 전체 또는 특정 레이어/치수에 대해 NaN을 원한다면 분명하지 않습니다. 후자 인 경우 조금 더 많은 코드를 보여 주면 감사하겠습니다.