주요 콘텐츠

isprotected

categorical형 배열의 범주가 보호되는지 확인

설명

tf = isprotected(A)는 categorical형 배열의 범주가 보호될 경우 논리값 1(true)을 반환합니다. 그렇지 않으면 isprotected는 논리값 0(false)을 반환합니다.

  • 1 (true) — 새 값을 B에 할당할 때 값은 기존 범주 중 하나에 속해야 합니다. 따라서 동일한 범주의 배열만 결합시킬 수 있습니다. 새 범주를 B에 추가하려면 addcats 함수를 사용해야 합니다.

  • 0 (false) — 새 값을 B에 대입할 때 범주가 자동으로 업데이트됩니다. 따라서 범주가 다른 (비순서형) categorical형 배열을 결합할 수 있습니다. 범주는 두 배열의 범주를 모두 포함하도록 업데이트될 수 있습니다.

예제

예제

모두 축소

객체 10개의 크기가 포함된 categorical형 배열을 만듭니다. 값 S, M, L에 대해 이름 small, medium, large를 각각 사용합니다.

valueset = ["S" "M" "L"];
catnames = ["small" "medium" "large"];
A = categorical(["M";"L";"S";"S";"M";"L";"M";"L";"M";"S"], ...
                valueset,catnames,Ordinal=true)
A = 10×1 categorical
     medium 
     large 
     small 
     small 
     medium 
     large 
     medium 
     large 
     medium 
     small 

A의 범주를 표시합니다.

categories(A)
ans = 3×1 cell
    {'small' }
    {'medium'}
    {'large' }

A의 범주가 보호되는지 확인합니다.

tf = isprotected(A)
tf = logical
   1

A는 순서형 categorical형 배열이므로 범주가 보호됩니다. 기존 범주 중 하나에 속하지 않는 새 값(예: A(11) = "xlarge")을 추가하려고 하면 오류가 반환됩니다.

먼저 addcats를 사용하여 새 범주 xlarge를 추가합니다.

A = addcats(A,"xlarge",After="large");

이제 범주가 존재하므로 xlarge에 값을 추가할 수 있습니다.

A(11) = "xlarge"
A = 11×1 categorical
     medium 
     large 
     small 
     small 
     medium 
     large 
     medium 
     large 
     medium 
     small 
     xlarge 

A는 이제 small < medium < large < xlarge와 같은 4개의 범주를 갖는 11×1 categorical형 배열입니다.

입력 인수

모두 축소

입력 배열로, categorical형 배열로 지정됩니다.

순서형 categorical형 배열의 범주는 항상 보호됩니다.

출력 인수

모두 축소

true 또는 false 결과로, logical 데이터형의 1이나 0으로 반환됩니다.

확장 기능

모두 확장

GPU 코드 생성
GPU Coder™를 사용하여 NVIDIA® GPU용 CUDA® 코드를 생성할 수 있습니다.

버전 내역

R2013b에 개발됨