Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

rescale

배열 요소의 범위 스케일링

설명

예제

R = rescale(X)X의 요소를 구간 [0,1]로 스케일링합니다. 출력 배열 RX와 크기가 동일합니다.

예제

R = rescale(X,a,b)X의 요소를 구간 [a,b]로 스케일링합니다.

예제

R = rescale(___,Name,Value)는 하나 이상의 이름-값 인수를 사용하여 재스케일링에 대한 추가 파라미터를 지정합니다. 예를 들어, rescale(X,"InputMin",5)는 범위 [0,1]로 스케일링하기 전에 5보다 작은 X의 모든 요소를 5로 설정합니다.

예제

모두 축소

벡터의 요소를 구간 [0,1]로 스케일링합니다.

X = 1:5;
R = rescale(X)
R = 1×5

         0    0.2500    0.5000    0.7500    1.0000

벡터의 요소를 구간 [-1,1]로 스케일링합니다.

X = 1:5;
R = rescale(X,-1,1)
R = 1×5

   -1.0000   -0.5000         0    0.5000    1.0000

각 열의 최솟값과 최댓값을 지정하여 행렬의 각 열을 구간 [0,1]로 스케일링합니다. rescaleInputMin 값 및 InputMax 값의 형태에 대응하는 입력 배열의 차원을 따라 스케일링합니다.

X = magic(3)
X = 3×3

     8     1     6
     3     5     7
     4     9     2

colmin = min(X)
colmin = 1×3

     3     1     2

colmax = max(X)
colmax = 1×3

     8     9     7

Rcol = rescale(X,"InputMin",colmin,"InputMax",colmax)
Rcol = 3×3

    1.0000         0    0.8000
         0    0.5000    1.0000
    0.2000    1.0000         0

X의 각 행을 구간 [0,1]로 스케일링합니다.

rowmin = min(X,[],2)
rowmin = 3×1

     1
     3
     2

rowmax = max(X,[],2)
rowmax = 3×1

     8
     7
     9

Rrow = rescale(X,"InputMin",rowmin,"InputMax",rowmax)
Rrow = 3×3

    1.0000         0    0.7143
         0    0.5000    1.0000
    0.2857    1.0000         0

입력 인수

모두 축소

입력 배열로, 스칼라, 벡터, 행렬, 다차원 배열 중 하나로 지정됩니다.

  • Xsingle형인 경우 출력값도 single형입니다. 그렇지 않은 경우 출력값은 double형입니다.

  • X가 상수인 경우 rescale은 구간의 하한(기본적으로 0) 또는 NaN(지정된 구간에 Inf가 포함된 경우)을 반환합니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

하한으로, 스칼라, 벡터, 행렬 또는 다차원 배열로 지정됩니다. a의 크기는 입력 배열과 호환되어야 합니다. 예를 들어, XM×N 행렬인 경우 rescalea의 형태로 결정되는 차원을 따라 동작합니다.

  • a가 스칼라이면 rescale은 이것을 X의 모든 요소에 대한 하한으로 사용합니다.

  • a가 1×N 행 벡터이면, rescale은 각 요소를 X에서 대응하는 열에 대한 하한으로 사용합니다.

  • aM×1 열 벡터이면, rescale은 각 요소를 X에서 대응하는 행에 대한 하한으로 사용합니다.

호환되는 배열 크기에 대한 자세한 내용은 기본 연산에 대해 호환되는 배열 크기 항목을 참조하십시오.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

상한으로, 스칼라, 벡터, 행렬 또는 다차원 배열로 지정됩니다. b의 크기는 입력 배열과 호환되어야 합니다. 예를 들어, XM×N 행렬인 경우 rescaleb의 형태로 결정되는 차원을 따라 동작합니다.

  • b가 스칼라이면 rescale은 이것을 X의 모든 요소에 대한 상한으로 사용합니다.

  • b가 1×N 행 벡터이면, rescale은 각 요소를 X에서 대응하는 열에 대한 상한으로 사용합니다.

  • bM×1 열 벡터이면, rescale은 각 요소를 X에서 대응하는 행에 대한 상한으로 사용합니다.

호환되는 배열 크기에 대한 자세한 내용은 기본 연산에 대해 호환되는 배열 크기 항목을 참조하십시오.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

이름-값 인수

선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.

R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name을 따옴표로 묶으십시오.

예: B = rescale(A,"InputMin",5,"InputMax",10)

입력 범위의 최솟값으로, 스칼라, 벡터, 행렬 또는 다차원 배열로 지정됩니다. 입력 배열 X의 디폴트 값은 min(X(:))입니다. 입력 범위를 지정하면 입력 데이터의 범위가 확대되거나 축소됩니다. 예를 들어, rescale은 스케일링하기 전에 지정된 입력 최솟값보다 작은 모든 요소를 InputMin 값으로 설정합니다.

InputMin 값의 크기는 입력 배열과 호환되어야 합니다. 예를 들어, XM×N 행렬인 경우 rescale은 다음과 같이 입력 최솟값의 형태에 따른 차원을 따라 동작합니다.

  • 입력 최솟값이 스칼라인 경우 rescaleX의 모든 요소에 대해 해당 최솟값을 사용합니다.

  • 입력 최솟값이 1×N 행 벡터인 경우, rescale은 각 요소를 X에서 대응하는 열에 대한 최솟값으로 사용합니다.

  • 입력 최솟값이 M×1 열 벡터인 경우, rescale은 각 요소를 X에서 대응하는 행에 대한 최솟값으로 사용합니다.

호환되는 배열 크기에 대한 자세한 내용은 기본 연산에 대해 호환되는 배열 크기 항목을 참조하십시오.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

입력 범위의 최댓값으로, 스칼라, 벡터, 행렬 또는 다차원 배열로 지정됩니다. 입력 배열 X의 디폴트 값은 max(X(:))입니다. 입력 범위를 지정하면 입력 데이터의 범위가 확대되거나 축소됩니다. 예를 들어, rescale은 스케일링하기 전에 지정된 입력 최댓값보다 큰 모든 요소를 InputMax 값으로 설정합니다.

InputMax 값의 크기는 입력 배열과 호환되어야 합니다. 예를 들어, XM×N 행렬인 경우 rescale은 다음과 같이 입력 최댓값의 형태에 따른 차원을 따라 동작합니다.

  • 입력 최댓값이 스칼라인 경우 rescaleX의 모든 요소에 대해 해당 최댓값을 사용합니다.

  • 입력 최댓값이 1×N 행 벡터인 경우, rescale은 각 요소를 X에서 대응하는 열에 대한 최댓값으로 사용합니다.

  • 입력 최댓값이 M×1 열 벡터인 경우, rescale은 각 요소를 X에서 대응하는 행에 대한 최댓값으로 사용합니다.

호환되는 배열 크기에 대한 자세한 내용은 기본 연산에 대해 호환되는 배열 크기 항목을 참조하십시오.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

알고리즘

R = rescale(X,a,b,"InputMin",inmin,"InputMax",inmax)는 다음 식을 사용하여

l + [(X-inmin)./(inmax-inmin)].*(b-a)

배열 X의 요소를 스케일링합니다. 이때 X의 값들은 inmininmax 범위 내에 있습니다.

  • ab가 지정되지 않은 경우 rescale은 디폴트 값 0과 1을 각각 사용합니다.

  • InputMin이 지정되지 않은 경우 rescale은 해당 값을 디폴트 min(X(:))로 설정합니다.

  • InputMax가 지정되지 않은 경우 rescale은 해당 값을 디폴트 max(X(:))로 설정합니다.

확장 기능

C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

버전 내역

R2017b에 개발됨

참고 항목

함수