Numpy.digitize()를 사용하여 python에서 변수를 그룹화하는 방법
종종 변수 값을 Python의 “bins”에 넣는 데 관심이 있을 수 있습니다.
다행히도 다음 구문을 사용하는 numpy.digitize() 함수를 사용하면 이 작업을 쉽게 수행할 수 있습니다.
numpy.digitize(x, bins, right=False)
금:
- x: 그룹에 대한 배열입니다.
- bins: 저장소 배열.
- 오른쪽: 간격에 Bin의 오른쪽 가장자리 또는 왼쪽 가장자리가 포함되는지 여부를 나타냅니다. 기본적으로 간격에는 오른쪽 간선이 포함되지 않습니다.
이 튜토리얼에서는 이 기능의 실제 사용에 대한 몇 가지 예를 보여줍니다.
예시 1: 모든 값을 두 개의 bin에 배치
다음 코드는 배열의 값을 두 개의 bin에 배치하는 방법을 보여줍니다.
- x < 20이면 0
- x ≥ 20인 경우 1
import numpy as np #create data data = [2, 4, 4, 7, 12, 14, 19, 20, 24, 31, 34] #place values into bins n.p. digitize (data, bins=[20]) array([0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1])
예시 2: 모든 값을 3개의 bin에 배치
다음 코드는 배열의 값을 세 개의 bin에 배치하는 방법을 보여줍니다.
- x < 10이면 0
- 10 ≤ x < 20인 경우 1
- x ≥ 20인 경우 2
import numpy as np #create data data = [2, 4, 4, 7, 12, 14, 20, 22, 24, 31, 34] #place values into bins n.p. digitize (data, bins=[10, 20]) array([0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 2])
right= True를 지정하면 값은 다음 저장소에 배치됩니다.
- x ≤ 10인 경우 0
- 10 < x ≤ 20인 경우 1
- x > 20인 경우 2
각 간격에는 Bin의 오른쪽 가장자리가 포함됩니다. 다음과 같이 보입니다.
import numpy as np #createdata data = [2, 4, 4, 7, 12, 14, 20, 22, 24, 31, 34] #place values into bins n.p. digitize (data, bins=[10, 20], right= True ) array([0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2])
예시 3: 모든 값을 4개의 Bin에 배치
다음 코드는 배열의 값을 세 개의 bin에 배치하는 방법을 보여줍니다.
- x < 10이면 0
- 10 ≤ x < 20인 경우 1
- 20 ≤ x < 30인 경우 2
- x ≥ 30인 경우 3
import numpy as np #createdata data = [2, 4, 4, 7, 12, 14, 20, 22, 24, 31, 34] #place values into bins n.p. digitize (data, bins=[10, 20, 30]) array([0, 0, 0, 0, 1, 1, 2, 2, 2, 3, 3])
예시 4: 각 bin의 빈도 계산
numpy.digitize() 함수를 보완하는 또 다른 유용한 NumPy 함수는 각 bin의 빈도를 계산하는 numpy.bincount() 함수입니다.
다음 코드는 배열의 값을 세 그룹으로 나누고 각 그룹의 빈도를 계산하는 방법을 보여줍니다.
import numpy as np #createdata data = [2, 4, 4, 7, 12, 14, 20, 22, 24, 31, 34] #place values into bins bin_data = np. digitize (data, bins=[10, 20]) #view binned data bin_data array([0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 2]) #count frequency of each bin n.p. bincount (bin_data) array([4, 2, 5])
출력은 다음을 알려줍니다.
- Bin “0”에는 4개의 데이터 값이 포함되어 있습니다.
- Bin “1”에는 2개의 데이터 값이 포함되어 있습니다.
- Bin “2”에는 5개의 데이터 값이 포함되어 있습니다.
여기에서 더 많은 Python 튜토리얼을 찾아보세요.