특정 주 내 각 사무실의 총 매출 비율을 계산하려면 Pandas의 혁신적인 힘을 활용할 수 있습니다. 그룹별 작업. 자세한 내용을 살펴보겠습니다.
state, office_id, sales라는 세 개의 열이 있는 CSV 파일을 생각해 보세요. 주 및 office_id별로 데이터를 그룹화하고 매출을 요약하려면 df.groupby(['state', 'office_id']).agg({'sales': 'sum'})를 활용할 수 있습니다.
df = pd.DataFrame({'state': ['CA', 'WA', 'CO', 'AZ'] * 3, 'office_id': list(range(1, 7)) * 2, 'sales': [np.random.randint(100000, 999999) for _ in range(12)]}) df.groupby(['state', 'office_id']).agg({'sales': 'sum'})
이 작업을 통해 각 고유(주, office_id) 조합에 대해 매출 합계가 계산되는 그룹화된 DataFrame이 생성됩니다.
전체 매출의 비율을 결정하려면 각 사무실에서는 다음 전략을 구현할 수 있습니다.
변혁의 힘을 소개합니다! 이를 매출 열에 적용하고 각 주 내 매출 합계로 나눕니다.
df['sales'] / df.groupby('state')['sales'].transform('sum')
이 변환을 통해 각 주 내 총 매출 대비 각 사무실 매출의 비율을 나열하는 백분율이 포함된 DataFrame이 생성됩니다. .
또는 각 그룹 내 판매 열을 기반으로 새 그룹화된 개체를 생성할 수 있습니다. (주, office_id) 그룹. 그런 다음 새로 그룹화된 열의 합계로 나눕니다.
state_office = df.groupby(['state', 'office_id']).agg({'sales': 'sum'}) state_pcts = state_office.groupby(level=0).apply(lambda x: 100 * x / float(x.sum()))
이 접근 방식은 백분율 값이 있는 유사한 DataFrame을 제공하지만 추가적인 그룹화 수준이 필요합니다.
두 방법 모두 효과적입니다. 각 주 내 총 매출에 대한 각 사무실의 기여도를 계산합니다. 이러한 기술을 이해하면 그룹화된 데이터에서 새로운 통찰력을 얻을 수 있습니다!
위 내용은 Pandas Groupby를 사용하여 사무실당 총 매출 비율을 계산하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!