Pandas를 사용하여 열 구간화
데이터 조작에는 값을 의미 있는 그룹 또는 구간으로 구성하는 경우가 많습니다. 이 맥락에서 우리는 pandas를 사용하여 숫자 값으로 열을 구간화하는 방법을 탐색할 것입니다.
질문:
숫자 값이 있는 데이터 프레임 열이 주어지면, 값 개수가 포함된 저장소로 시각화하세요. 구체적으로 각 bin에 속하는 값의 수를 어떻게 확인할 수 있나요?
답변:
옵션 1: pandas.cut 사용
pandas.cut 함수를 사용하여 저장소를 만들 수 있습니다. 예는 다음과 같습니다.
import pandas as pd bins = [0, 1, 5, 10, 25, 50, 100] df['binned'] = pd.cut(df['percentage'], bins) df['binned'].value_counts()
이는 지정된 간격에 따라 구간을 생성하고 각 값에 대한 구간 할당이 포함된 시리즈를 반환합니다. value_counts를 사용하면 각 bin에서 발생 횟수를 계산할 수 있습니다.
옵션 2: numpy.searchsorted 사용
또 다른 접근 방식은 numpy.searchsorted를 사용하는 것입니다.
import numpy as np bins = [0, 1, 5, 10, 25, 50, 100] df['binned'] = np.searchsorted(bins, df['percentage'].values) df['binned'].value_counts()
이 함수는 각 값이 속한 첫 번째 Bin의 인덱스를 반환합니다. 그런 다음 value_counts를 사용하여 bin 개수를 확인할 수 있습니다.
옵션 3: Groupby와 Size 결합
Pandas의 groupby 및 size 방법도 사용할 수 있습니다.
s = df.groupby(pd.cut(df['percentage'], bins)).size()
이것은 Bin 할당에 따라 데이터 프레임을 그룹화하고 각 값의 개수가 포함된 시리즈를 반환합니다. bin.
결론:
이러한 방법을 사용하면 숫자 열을 효과적으로 구간화하고 각 구간에 대한 값 개수를 얻어 값 분포에 대한 통찰력을 얻을 수 있습니다.
위 내용은 Pandas DataFrame 열을 구간화하고 각 구간의 값을 계산하려면 어떻게 해야 하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!