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

溫馨提示×

溫馨提示×

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

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

使用pandas實現連續數據的離散化處理方式(分箱操作)

發布時間:2020-10-01 15:26:05 來源:腳本之家 閱讀:390 作者:Backcanhave7 欄目:開發技術

Python實現連續數據的離散化處理主要基于兩個函數,pandas.cut和pandas.qcut,前者根據指定分界點對連續數據進行分箱處理,后者則可以根據指定箱子的數量對連續數據進行等寬分箱處理,所謂等寬指的是每個箱子中的數據量是相同的。

下面簡單介紹一下這兩個函數的用法:

# 導入pandas包
import pandas as pd
ages = [20, 22, 25, 27, 21, 23, 37, 31, 61, 45, 41, 32] # 待分箱數據
bins = [18, 25, 35, 60, 100] # 指定箱子的分界點

pandas.cut函數 :

cats1 = pd.cut(ages, bins)
cats1

cats1結果:

[(18, 25], (18, 25], (18, 25], (25, 35], (18, 25], ..., (25, 35], (60, 100], (35, 60],
(35, 60], (25, 35]]
Length: 12
Categories (4, interval[int64]): [(18, 25] < (25, 35] < (35, 60] < (60, 100]]
# labels參數為False時,返回結果中用不同的整數作為箱子的指示符
cats2 = pd.cut(ages, bins,labels=False) 
cats2 # 輸出結果中的數字對應著不同的箱子

cats2結果:

 array([0, 0, 0, 1, 0, 0, 2, 1, 3, 2, 2, 1], dtype=int64)
pd.value_counts(cats1) # 對不同箱子中的數進行計數

計數結果:

(18, 25]  5
(35, 60]  3
(25, 35]  3
(60, 100] 1
dtype: int64
pd.cut(ages, [18, 26, 36, 61, 100], right=False) # 指定分箱區間是左閉右開

改變區間開閉結果:

[[18, 26), [18, 26), [18, 26), [26, 36), [18, 26), ..., [26, 36), [61, 100), [36, 61),
[36, 61), [26, 36)]
Length: 12
Categories (4, interval[int64]): [[18, 26) < [26, 36) < [36, 61) < [61, 100)]
# 可以將想要指定給不同箱子的標簽傳遞給labels參數
group_names = ['Youth', 'YoungAdult', 'MiddleAged', 'Senior']
cuts3 = pd.cut(ages, bins, labels=group_names) 
cuts3

cats3結果:

[Youth, Youth, Youth, YoungAdult, Youth, ..., YoungAdult, Senior, MiddleAged,
MiddleAged, YoungAdult]
Length: 12
Categories (4, object): [Youth < YoungAdult < MiddleAged < Senior]

pandas.qcut函數:

qcats1 = pd.qcut(ages,q=4) # 參數q指定所分箱子的數量
qcats1

qcats1結果:

[(19.999, 22.75], (19.999, 22.75], (22.75, 29.0], (22.75, 29.0], (19.999, 22.75], ...,
(29.0, 38.0], (38.0, 61.0], (38.0, 61.0], (38.0, 61.0], (29.0, 38.0]]
Length: 12
Categories (4, interval[float64]): [(19.999, 22.75] < (22.75, 29.0] < (29.0, 38.0] <
(38.0, 61.0]]
qcats1.value_counts() # 從輸出結果可以看到每個箱子中的數據量時相同的

計數結果:

(19.999, 22.75] 3
(22.75, 29.0]  3
(29.0, 38.0]  3
(38.0, 61.0]  3
dtype: int64

​​​參考:《利用Python進行數據分析》——Wes McKinney 第二版

以上這篇使用pandas實現連續數據的離散化處理方式(分箱操作)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

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

AI

比如县| 昂仁县| 东丽区| 南郑县| 阿坝| 连山| 峨山| 萨嘎县| 五家渠市| 汽车| 玉树县| 资阳市| 沅江市| 山东省| 滨海县| 保定市| 宜兰市| 无棣县| 运城市| 云梦县| 鲁甸县| 大荔县| 竹北市| 称多县| 隆尧县| 客服| 阿瓦提县| 千阳县| 类乌齐县| 临武县| 庐江县| 肥西县| 峡江县| 宁安市| 视频| 荔波县| 即墨市| 大同县| 革吉县| 西丰县| 工布江达县|