91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

去重計數有哪些實現方式

發布時間: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

运城市| 盘山县| 洪湖市| 阿坝县| 沿河| 健康| 水城县| 余江县| 黔南| 南昌市| 临夏市| 鹤峰县| 连南| 仪征市| 荔浦县| 和政县| 伊金霍洛旗| 玉环县| 汉中市| 吉木萨尔县| 屯昌县| 长治县| 连云港市| 大丰市| 辽宁省| 华安县| 唐河县| 花垣县| 濉溪县| 关岭| 岳阳县| 东乌珠穆沁旗| 锦州市| 三原县| 新干县| 和政县| 奉新县| 蒲城县| 锡林浩特市| 革吉县| 万全县|