Pandas 그룹화-다른 열을 기준으로 그룹화 된 합계의 백분율로 값

데이터 과학을 통해 넘어지다

이 질문은 내가 어제 물어 보았던 질문 의 연장입니다 .

데이터 프레임과 팬더를 사용하여 그룹 별 각 카테고리에 대한 팁 비율을 파악하려고합니다.

따라서 팁 데이터베이스를 사용하여 각 성별 / 흡연자에 대해 팁 비율이 여성 흡연자 / 모든 여성 및 여성 비 흡연자 / 모든 여성 (남성의 경우 동일)에 대해 알아보고 싶습니다.

이렇게하면

import pandas as pd
df=pd.read_csv("https://raw.githubusercontent.com/wesm/pydata-book/master/ch08/tips.csv", sep=',')
df.groupby(['sex', 'smoker'])[['total_bill','tip']].sum()

다음을 얻습니다.

        total_bill  tip
sex smoker      
Female  No  977.68  149.77
        Yes 593.27  96.74
Male    No  1919.75 302.00
        Yes 1337.07 183.07

근데 이런 걸 더 찾고 있어요

        Tip Pct
Female  No  0.153189183
        Yes 0.163062349
Male    No  0.15731215
        Yes 0.136918785

여기서 Tip Pct = sum (tip) / sum (total_bill) 각 그룹

내가 뭘 잘못하고 있고 어떻게 고치나요? 감사합니다!

총 팁의 비율로 팁이 제공된다는 것을 이해합니다.

(df.groupby(['sex', 'smoker'])['tip'].sum().groupby(level = 0).transform(lambda x: x/x.sum()))

다른 열을 보도록 수정하는 방법이 있습니까?

(df.groupby(['sex', 'smoker'])['tip'].sum().groupby(level = 0).transform(lambda x: x/x['total_bill'].sum()))

감사!

Psidom

당신이 사용할 수있는 apply데이터 프레임 (와의 행을 루프로 axis = 1각 행에 대해 사용자가 액세스 할 수 있습니다), tiptotal_bill비율을 얻기 위해 그들을 분할 :

(df.groupby(['sex', 'smoker'])[['total_bill','tip']].sum()
   .apply(lambda r: r.tip/r.total_bill, axis = 1))

#sex     smoker
#Female  No        0.153189
#        Yes       0.163062
#Male    No        0.157312
#        Yes       0.136919
#dtype: float64

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

다른 열 pands python을 기반으로 그룹화 된 값의 백분율을 얻습니다.

분류에서Dev

다른 열의 그룹화 된 값의 합계로 Pandas 데이터 프레임의 열 정규화

분류에서Dev

다른 열의 최대 값에서 반환 된 최소 연도 값을 기준으로 열별로 그룹화

분류에서Dev

Pandas : 다른 열로 그룹화 된 열의 평균 계산

분류에서Dev

열 값의 고유 한 행으로 그룹화 된 Pandas 계산

분류에서Dev

한 열을 기준으로 그룹화하고 다른 열의 합계 값을 가져옵니다.

분류에서Dev

다른 열의 값으로 그룹화 된 Excel 평균

분류에서Dev

열을 기준으로 그룹화 한 서로 다른 행의 두 값 차이

분류에서Dev

열의 값 합계 및 R의 다른 열로 그룹화

분류에서Dev

열 합계를 기반으로하고 Pandas의 다른 열 2 개로 그룹화 된 새 열 추가

분류에서Dev

SQL에서 다른 열로 그룹화 된 두 열 사이의 백분율을 어떻게 반환합니까?

분류에서Dev

csv의 열로 그룹화하고 다른 값 (PHP)의 합계

분류에서Dev

다른 열의 값을 공유하는 열로 그룹화 된 값만 유지

분류에서Dev

열로 그룹화 된 값 계산

분류에서Dev

열의 최대 값을 기준으로 그룹화 된 레코드 선택

분류에서Dev

Pandas : 다른 열로 그룹화 한 후 null이 아닌 요소의 numbe 백분율을 가져옵니다.

분류에서Dev

다른 열로 그룹화 된 여러 열의 True 또는 False 백분율 계산

분류에서Dev

다른 DataFrame의 그룹화 된 값을 기반으로 DataFrame 업데이트

분류에서Dev

Pandas 그룹화 된 인덱스를 사용하여 각 값으로 열을 구분합니다.

분류에서Dev

그룹화 된 값당 개수를 표시하면서 geom_bar에서 그룹화 된 값의 백분율 값을 계산합니다.

분류에서Dev

다른 값으로 그룹화 된 고유 한 값 쌍 계산

분류에서Dev

값을 기준으로 배열 요소를 그룹화하고 다른 값의 중앙값을 얻습니다.

분류에서Dev

그룹화 된 열의 이상 값을 정의 된 zscore에 따라 그룹의 평균으로 바꿉니다.

분류에서Dev

SQLSERVER 그룹화 기준 (다른 열을 기준으로 열 집계)

분류에서Dev

한 열의 MAX 값과 다른 열의 CONDITIONALLY topN 값을 기준으로 그룹화 및 필터링

분류에서Dev

설정된 숫자 범위를 기준으로 배열 값 그룹화 / 병합

분류에서Dev

첫 번째 열의 값을 기준으로 단어 그룹화

분류에서Dev

그룹화 기준으로 다른 열 유형 집계

분류에서Dev

Dataframe의 열을 기준으로 그룹화하고 그룹화 된 데이터로 다른 데이터 프레임을 만듭니다.

Related 관련 기사

  1. 1

    다른 열 pands python을 기반으로 그룹화 된 값의 백분율을 얻습니다.

  2. 2

    다른 열의 그룹화 된 값의 합계로 Pandas 데이터 프레임의 열 정규화

  3. 3

    다른 열의 최대 값에서 반환 된 최소 연도 값을 기준으로 열별로 그룹화

  4. 4

    Pandas : 다른 열로 그룹화 된 열의 평균 계산

  5. 5

    열 값의 고유 한 행으로 그룹화 된 Pandas 계산

  6. 6

    한 열을 기준으로 그룹화하고 다른 열의 합계 값을 가져옵니다.

  7. 7

    다른 열의 값으로 그룹화 된 Excel 평균

  8. 8

    열을 기준으로 그룹화 한 서로 다른 행의 두 값 차이

  9. 9

    열의 값 합계 및 R의 다른 열로 그룹화

  10. 10

    열 합계를 기반으로하고 Pandas의 다른 열 2 개로 그룹화 된 새 열 추가

  11. 11

    SQL에서 다른 열로 그룹화 된 두 열 사이의 백분율을 어떻게 반환합니까?

  12. 12

    csv의 열로 그룹화하고 다른 값 (PHP)의 합계

  13. 13

    다른 열의 값을 공유하는 열로 그룹화 된 값만 유지

  14. 14

    열로 그룹화 된 값 계산

  15. 15

    열의 최대 값을 기준으로 그룹화 된 레코드 선택

  16. 16

    Pandas : 다른 열로 그룹화 한 후 null이 아닌 요소의 numbe 백분율을 가져옵니다.

  17. 17

    다른 열로 그룹화 된 여러 열의 True 또는 False 백분율 계산

  18. 18

    다른 DataFrame의 그룹화 된 값을 기반으로 DataFrame 업데이트

  19. 19

    Pandas 그룹화 된 인덱스를 사용하여 각 값으로 열을 구분합니다.

  20. 20

    그룹화 된 값당 개수를 표시하면서 geom_bar에서 그룹화 된 값의 백분율 값을 계산합니다.

  21. 21

    다른 값으로 그룹화 된 고유 한 값 쌍 계산

  22. 22

    값을 기준으로 배열 요소를 그룹화하고 다른 값의 중앙값을 얻습니다.

  23. 23

    그룹화 된 열의 이상 값을 정의 된 zscore에 따라 그룹의 평균으로 바꿉니다.

  24. 24

    SQLSERVER 그룹화 기준 (다른 열을 기준으로 열 집계)

  25. 25

    한 열의 MAX 값과 다른 열의 CONDITIONALLY topN 값을 기준으로 그룹화 및 필터링

  26. 26

    설정된 숫자 범위를 기준으로 배열 값 그룹화 / 병합

  27. 27

    첫 번째 열의 값을 기준으로 단어 그룹화

  28. 28

    그룹화 기준으로 다른 열 유형 집계

  29. 29

    Dataframe의 열을 기준으로 그룹화하고 그룹화 된 데이터로 다른 데이터 프레임을 만듭니다.

뜨겁다태그

보관