이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

ismissing

누락된 값 찾기

구문

TF = ismissing(A)
TF = ismissing(A,indicator)

설명

예제

TF = ismissing(A)는 배열이나 테이블의 요소 중 누락된 값이 있는 요소를 나타내는 논리형 배열을 반환합니다. TF의 크기는 A의 크기와 같습니다.

표준 누락된 값은 데이터형에 따라 달라집니다.

  • double형, single형, duration형, calendarDuration형의 경우 NaN

  • datetime형의 경우 NaT

  • string형의 경우 <missing>

  • categorical형의 경우 <undefined>

  • char형의 경우 ' '

  • 문자형 벡터로 구성된 cell형의 경우 {''}

예제

TF = ismissing(A,indicator)indicator에 있는 값을 누락값 표시자로 취급하여, 위에 열거된 구문에 나와 있는 모든 디폴트 표시자를 무시합니다. indicator는 하나의 표시자일 수도 있고 여러 개의 표시자일 수도 있습니다. 예를 들어, Adouble형의 배열인 경우 ismissing(A,[0,-99])는 0과 -99를 NaN이 아닌 누락된 double형 값으로 취급합니다.

예제

모두 축소

NaN 값을 포함하는 행 벡터 A를 만들고 A에서 이러한 값의 위치를 식별합니다.

A = [3 NaN 5 6 7 NaN NaN 9];
TF = ismissing(A)
TF = 1x8 logical array

   0   1   0   0   0   1   1   0

다양한 데이터형의 변수가 있는 테이블을 만들고 누락된 값이 있는 요소를 찾습니다.

dblVar = [NaN;3;5;7;9;11;13];
singleVar = single([1;NaN;5;7;9;11;13]);
cellstrVar = {'one';'three';'';'seven';'nine';'eleven';'thirteen'};
charVar = ['A';'C';'E';' ';'I';'J';'L'];
categoryVar = categorical({'red';'yellow';'blue';'violet';'';'ultraviolet';'orange'});
dateVar = [datetime(2015,1:2:10,15) NaT datetime(2015,11,15)]';
stringVar = ["a";"b";"c";"d";"e";"f";missing];

A = table(dblVar,singleVar,cellstrVar,charVar,categoryVar,dateVar,stringVar)
A=7×7 table
    dblVar    singleVar    cellstrVar    charVar    categoryVar      dateVar      stringVar
    ______    _________    __________    _______    ___________    ___________    _________

     NaN           1       'one'            A       red            15-Jan-2015    "a"      
       3         NaN       'three'          C       yellow         15-Mar-2015    "b"      
       5           5       ''               E       blue           15-May-2015    "c"      
       7           7       'seven'                  violet         15-Jul-2015    "d"      
       9           9       'nine'           I       <undefined>    15-Sep-2015    "e"      
      11          11       'eleven'         J       ultraviolet            NaT    "f"      
      13          13       'thirteen'       L       orange         15-Nov-2015    <missing>

A의 요소가 누락된 값을 가지는 경우 ismissing은 대응값으로 1을 반환합니다.

TF = ismissing(A)
TF = 7x7 logical array

   1   0   0   0   0   0   0
   0   1   0   0   0   0   0
   0   0   1   0   0   0   0
   0   0   0   1   0   0   0
   0   0   0   0   1   0   0
   0   0   0   0   0   1   0
   0   0   0   0   0   0   1

TF의 크기는 A의 크기와 같습니다.

'NA', '', -99, NaN, Inf가 누락된 값을 나타내는 테이블을 만듭니다. 그런 다음, 누락된 값이 있는 요소를 찾습니다.

dblVar = [NaN;3;Inf;7;9];
int8Var = int8([1;3;5;7;-99]);
cellstrVar = {'one';'three';'';'NA';'nine'};
charVar = ['A';'C';'E';' ';'I'];

A = table(dblVar,int8Var,cellstrVar,charVar)
A=5×4 table
    dblVar    int8Var    cellstrVar    charVar
    ______    _______    __________    _______

     NaN          1       'one'           A   
       3          3       'three'         C   
     Inf          5       ''              E   
       7          7       'NA'                
       9        -99       'nine'          I   

A의 요소가 누락된 값을 가지는 경우 ismissing은 대응값으로 1을 반환합니다.

id = {'NA' '' -99 NaN Inf};
TF = ismissing(A,id)
TF = 5x4 logical array

   1   0   0   0
   0   0   0   0
   1   0   1   0
   0   0   1   1
   0   1   0   0

ismissing은 문자형 배열의 후행 공백을 무시합니다. 따라서, 빈 문자형 벡터 ''가 누락값 표시자로 사용된 위 예제에서 ismissingA.cellstrVar의 빈 문자형 벡터뿐만 아니라 A.charVar의 공백도 누락된 값으로 식별합니다.

입력 인수

모두 축소

입력 데이터로, 벡터, 행렬, 다차원 배열, table형 또는 timetable형으로 지정됩니다. A가 timetable형이면 ismissing은 테이블 데이터에 대해서만 동작하고 행 시간값으로 구성된 벡터의 NaT 값 또는 NaN 값은 무시합니다.

데이터형: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | cell | table | timetable | categorical | datetime | duration | calendarDuration

누락값 표시자로, 스칼라, 벡터 또는 셀형 배열로 지정됩니다. A가 배열인 경우 indicator는 벡터여야 합니다. A가 테이블 또는 타임테이블인 경우 indicator는 여러 데이터형을 요소로 가지는 셀형 배열일 수도 있습니다.

indicator에 입력된 값은 ismissing이 누락된 값으로 처리하는 값을 나타냅니다. indicator를 지정하면 모든 디폴트 표준 누락 표시자가 무시됩니다. 표준 표시자 목록을 유지한 채로 표시자를 추가하려는 경우 모든 디폴트 표시자를 indicator의 요소로 포함시켜야 합니다. 예를 들어, Acategorical형 값과 숫자형 값을 포함하는 테이블인 경우 ismissing(A,{-99,'<undefined>'})를 사용하여 -99를 누락된 숫자형 값으로 표시하지만, <undefined>를 누락된 categorical형 값으로 유지할 수 있습니다.

missing 값을 NaN, NaT, missing 또는 <undefined>로 표현되는 모든 누락된 데이터에 대한 표시자로도 사용할 수 있습니다. 입력값이 table형인 경우 missing은 누락된 문자형 벡터(' ')와, 누락된 '문자형 벡터로 구성된 셀형 배열'({''})에 대한 표시자이기도 합니다.

표시자 데이터형은 A의 요소의 데이터형과 일치합니다. 다음은 A의 요소와 표시자 간에 추가로 일치하는 데이터형입니다.

  • double형 표시자는 Adouble형, single형, 정수, logical형 요소와 일치합니다.

  • string형 표시자와 char형 표시자 그리고, 문자형 벡터로 구성된 셀형 배열인 표시자는 Astring형 요소와 일치합니다.

  • string형 표시자와 char형 표시자는 Acategorical형 요소와 일치합니다.

예: TF = ismissing(A,0)0만 누락된 값으로 인식합니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | cell | datetime | duration

  • 정수 변수는 NaN을 저장할 수 없으므로, 다른 용도로 절대 사용되지 않을 특별한 정수 값을 사용하여 -99와 같이 누락된 정수 데이터를 지정해야 합니다.

알고리즘

ismissing은 문자형 벡터로 구성된 셀형 배열, 문자형 배열 또는 categorical형 배열인 표시자에 대해 선행 공백과 후행 공백을 각각 다르게 처리합니다.

  • 문자형 벡터로 구성된 셀형 배열의 경우 ismissing은 표시자 공백을 무시하지 않습니다. 모든 문자형 벡터가 정확하게 일치해야 합니다.

  • 문자형 배열의 경우 ismissing은 표시자의 후행 공백을 무시합니다.

  • categorical형 배열의 경우 ismissing은 표시자의 선행 공백과 후행 공백을 무시합니다.

확장 기능

R2013b에 개발됨