Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Mengira Peratusan Jualan setiap Pejabat dalam Setiap Negeri Menggunakan Pandas Groupby?

Bagaimana untuk Mengira Peratusan Jualan setiap Pejabat dalam Setiap Negeri Menggunakan Pandas Groupby?

Barbara Streisand
Barbara Streisandasal
2024-12-09 06:40:08605semak imbas

How to Calculate the Percentage of Sales per Office within Each State Using Pandas Groupby?

Peratusan Jumlah Panda dengan Groupby

Mengira peratusan jualan setiap pejabat di negeri tertentu boleh dilakukan menggunakan kumpulan Pandas. Walau bagaimanapun, ia memerlukan langkah tambahan untuk mencapai hasil yang diingini.

Andaikan kami mempunyai fail CSV dengan lajur yang mewakili Negeri, ID Pejabat dan Jualan. Kami boleh mengimport Panda dan mencipta DataFrame:

import pandas as pd

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)]})

Untuk mengira jumlah jualan bagi setiap pejabat dan negeri, kami boleh mengumpulkan mengikut lajur tersebut:

state_office = df.groupby(['state', 'office_id']).agg({'sales': 'sum'})

Untuk mengira peratusan jualan setiap pejabat di negeri tertentu, kita boleh mengumpulkan mengikut negeri dan menggunakan fungsi yang membahagikan jualan setiap pejabat dengan jumlah negeri jualan:

state_pcts = state_office.groupby(level=0).apply(lambda x:
                                                 100 * x / float(x.sum()))

Ini menghasilkan DataFrame dengan peratusan jualan untuk setiap pejabat:

print(state_pcts)
                     sales
state office_id           
AZ    2          16.981365
      4          19.250033
      6          63.768601
CA    1          19.331879
      3          33.858747
      5          46.809373
CO    1          36.851857
      3          19.874290
      5          43.273852
WA    2          34.707233
      4          35.511259
      6          29.781508

Kaedah ini secara berkesan mengira peratusan jualan setiap pejabat dalam keadaan tertentu dengan " menjangkau" ke peringkat negeri kumpulan dengan menjumlahkan jualan untuk seluruh negeri.

Atas ialah kandungan terperinci Bagaimana untuk Mengira Peratusan Jualan setiap Pejabat dalam Setiap Negeri Menggunakan Pandas Groupby?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn