亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

去重計數有哪些實現方式

發布時間:2021-06-15 15:03:32 來源:億速云 閱讀:217 作者:chen 欄目:編程語言

這篇文章主要講解了“去重計數有哪些實現方式”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“去重計數有哪些實現方式”吧!

這是一個關于 pandas 從基礎到進階的練習題系列,來源于 github 上的 guipsamora/pandas_exercises  。這個項目從基礎到進階,可以檢驗你有多么了解 pandas。

我會挑選一些題目,并且提供比原題庫更多的解決方法以及更詳盡的解析。

如下數據:

去重計數有哪些實現方式

數據描述:

  • 此數據是訂單明細表。一個訂單會包含很多明細項,表中每個樣本(每一行)表示一個明細項

  • order_id 列存在重復

  • quantity 是明細項數量

需求:數據中共有多少個訂單?

下面是答案了

方式1

因為 order_id 列是存在重復的,那么一種比較直觀的方式就是去重+計數:

len(df.order_id.drop_duplicates()) 1834
  • Series.drop_duplicates() 返回的仍然是一個 Series

  • len 函數可以計算 Series 值數量

但是你可能不知道的是,這個方式是不準確的!

方式2

之所以說上一種方式是不準確,是因為沒有考慮到空值的問題。

len 函數不會忽略空值(nan) ,因此如果列中有空值,那么就比正確結果數量多。

正確的做法是:

len(df.order_id.drop_duplicates().dropna())
  • 使用 Series.dropna() 方法可以去掉 nan 值

提示:

即使列中有多個 nan ,經過去重后只會保留一個 nan 值

方式3

實際上,pandas 本身有提供一個忽略 nan 的計數方法:

df.order_id.drop_duplicates().count()

點評:

這種方式個人認為最合適

方式4

pandas 為列(Series)提供了一個快速匯總計數方法:

df.order_id.value_counts()

去重計數有哪些實現方式

  • Series.value_counts() 相當于 根據 order id 分組,統計數量。并且排除 nan

這相當于實現了去重,因此:

df.order_id.value_counts().count()

感謝各位的閱讀,以上就是“去重計數有哪些實現方式”的內容了,經過本文的學習后,相信大家對去重計數有哪些實現方式這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

体育| 彭州市| 平谷区| 浙江省| 都昌县| 十堰市| 梓潼县| 济阳县| 石景山区| 礼泉县| 丽水市| 瓦房店市| 华阴市| 莒南县| 基隆市| 临安市| 威信县| 时尚| 广丰县| 荣昌县| 榆社县| 抚松县| 公安县| 紫金县| 湄潭县| 大姚县| 广安市| 英德市| 桑植县| 商城县| 平原县| 多伦县| 轮台县| 赫章县| 广昌县| 沁源县| 青铜峡市| 洪雅县| 旺苍县| 依兰县| 比如县|