本篇內(nèi)容主要講解“Python怎么實現(xiàn)數(shù)據(jù)分箱技術(shù)”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Python怎么實現(xiàn)數(shù)據(jù)分箱技術(shù)”吧!
創(chuàng)新互聯(lián)是專業(yè)的杏花嶺網(wǎng)站建設(shè)公司,杏花嶺接單;提供網(wǎng)站設(shè)計、做網(wǎng)站,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行杏花嶺網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊,希望更多企業(yè)前來合作!
1 數(shù)據(jù)分箱
數(shù)據(jù)分箱技術(shù)在Pandas官方給出的定義:Bin values into discrete intervals,是指將值劃分到離散區(qū)間。好比不同大小的蘋果歸類到幾個事先布置的箱子中;不同年齡的人劃分到幾個年齡段中。
這種技術(shù)在數(shù)據(jù)處理時會很有用。
2 例子
我們先來看例子
import numpy as np
import pandas as pd
ages = np.array([5,10,36,12,77,89,100,30,1]) #年齡數(shù)據(jù)
現(xiàn)把數(shù)據(jù)劃分成 3 個區(qū)間,并打上老、中、青的標(biāo)簽。Pandas提供了易用的API,很容易就可以實現(xiàn)。
pd.cut(ages, 3, labels=['青','中','老'])
結(jié)果如下,一行代碼便實現(xiàn)。
[青, 青, 中, 青, 老, 老, 老, 青, 青]
cut在操作時,統(tǒng)計了一維數(shù)組的最小、最大值,得到一個區(qū)間長度,因為需要劃分3個區(qū)間,所以會得到三個均勻的區(qū)間,如下。
pd.cut(ages, 3 )>>>區(qū)間如下:Categories (3, interval[float64]): [(0.901, 34.0] < (34.0, 67.0] < (67.0, 100.0]]
給定數(shù)據(jù)的最小值為1,區(qū)間默認(rèn)是左開右閉,所以為了囊括1,需要將最靠左的區(qū)間向左延長0.1%(總區(qū)間長度),默認(rèn)精度為小數(shù)點(diǎn)后3位。
3 函數(shù)原型
通過以上例子初步認(rèn)識cut后,再分析cut原型就比較容易。
參數(shù)含義如下:
x:被切分的類數(shù)組數(shù)據(jù),注意必須是1維;
bins:簡單理解為分箱規(guī)則,就是桶。支持int 標(biāo)量、序列;
right:表示是否包含區(qū)間的右邊界,默認(rèn)包含;
labels:分割后的bins打標(biāo)簽;
retbins:表示是否將分割后的bins返回,默認(rèn)不返回。如為True,則:
array([ 0.901, 34. , 67. , 100. ]))
include_lowest:區(qū)間的左邊是開還是閉,默認(rèn)為開;
duplicates:是否允許重復(fù)區(qū)間。raise:不允許,drop:允許。
到此,相信大家對“Python怎么實現(xiàn)數(shù)據(jù)分箱技術(shù)”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
分享文章:Python怎么實現(xiàn)數(shù)據(jù)分箱技術(shù)
文章轉(zhuǎn)載:http://aaarwkj.com/article20/gjcdjo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、外貿(mào)建站、標(biāo)簽優(yōu)化、營銷型網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)