亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在Python中顯示每列的最高計數

如何在Python中顯示每列的最高計數

當年話下 2023-12-12 10:15:58
我已經用 Python 創建了一個 DataFrame,并希望顯示每個郵政編碼最流行的狗品種。我已經編碼了以下內容,但我只能顯示每個品種的總數,而不是品種本身。我的代碼:import pandas as pddf = pd.DataFrame({'zip_code':[12345,66666,12345,22222,22222,12345,66666,22222,44444],                   'primary_breed': ['labrador','pug','poodle','labrador','labrador','pug','whippet','poodle','labrador'],                   'animals_name':['lucy','charley','scout','hank','sweetie','lucy','daddy','lucy','charley'],                   'species':['dog','dog','dog','dog','dog','dog','dog','dog','dog']})# assign correct data typesdf['species'] = df['species'].astype('category')df['animals_name'] = df['animals_name'].astype('string')df['primary_breed'] = df['primary_breed'].astype('category')df['zip_code'] = df['zip_code'].astype('string')dogs = df.species == 'dog'# total number per breed per zipdf_total_per_breed_zip = df[dogs].groupby('zip_code')['primary_breed'].value_counts() print('\n\ntotal number per breed: \n', df_total_per_breed_zip)# most popular breed per zipdf_mostpop_breed_zip = df_total_per_breed_zip.max(level='zip_code')print('\n\nmost popular breed per zip: \n', df_mostpop_breed_zip)所以我得到的是:total number per breed:  zip_code  primary_breed12345     labrador         1          poodle           1          pug              122222     labrador         2          poodle           144444     labrador         166666     pug              1          whippet          1Name: primary_breed, dtype: int64most popular breed per zip:  zip_code12345    122222    244444    166666    1Name: primary_breed, dtype: int64但我想得到的是:total number per breed:  zip_code  primary_breed12345     labrador         1          poodle           1          pug              122222     labrador         2          poodle           144444     labrador         166666     pug              1          whippet          1Name: primary_breed, dtype: int64most popular breed per zip:  zip_code12345    labrador22222    labrador44444    labrador66666    pugName: primary_breed, dtype: int64
查看完整描述

1 回答

?
楊魅力

TA貢獻1811條經驗 獲得超6個贊

用于mode最常見的:


(df.loc[df['species']=='dog']

   .groupby('zip_code')['primary_breed']

   .agg(lambda x: x.mode()[0])

)

輸出:


zip_code

12345    labrador

22222    labrador

44444    labrador

66666         pug

Name: primary_breed, dtype: object


查看完整回答
反對 回復 2023-12-12
  • 1 回答
  • 0 關注
  • 151 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號