Pandas에서 Groupby를 사용한 전체 비율
주 내 각 사무실이 기여한 매출 비율을 계산하려면 Pandas에서 미묘한 접근 방식이 필요합니다. 단순히 '주' 및 'office_id'별로 그룹화하면 각 사무실의 매출 합계를 얻을 수 있지만 주 내 기여도 비율은 제공하지 않습니다.
이를 달성하려면 먼저 그룹별을 만들어야 합니다. 'state' 및 'office_id'를 기반으로 하는 개체입니다. 이렇게 하면 각 사무실-주 조합의 총 매출이 포함된 매출 열이 있는 데이터프레임이 제공됩니다.
state_office = df.groupby(['state', 'office_id']).agg({'sales': 'sum'})
백분율을 계산하려면 각 사무실의 매출을 해당 주의 총 매출로 나눌 수 있습니다. 그러나 groupby 내의 각 주의 총 매출에 액세스하려면 'state'를 기반으로 두 번째 groupby 개체를 생성해야 합니다.
state_total = df.groupby('state').agg({'sales': 'sum'})
이 개체를 사용하면 다음과 같이 'state_office' groupby를 향상할 수 있습니다. 각 사무실-주 조합에 대한 매출 비율을 포함하는 새 열:
state_pcts = state_office.groupby(level=0).apply(lambda x: 100 * x / float(state_total.loc[x.name]))
'groupby'의 'level=0' 매개변수는 원래 groupby가 'state' 및 'office_id'에 대해 형성한 다단계 지수의 최상위 수준입니다.
이러한 접근 방식을 사용하면 해당 주의 총 매출을 참조하여 각 사무실의 매출 비율을 계산할 수 있습니다.
위 내용은 Pandas를 사용하여 각 주 내 사무실당 매출 비율을 계산하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!