最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python實(shí)現(xiàn)數(shù)據(jù)挖掘中分箱的示例代碼

 更新時(shí)間:2024年01月02日 09:25:39   作者:python收藏家  
數(shù)據(jù)分箱(英語:Data?binning)是一種數(shù)據(jù)預(yù)處理方法,用于最大限度地減少小觀測(cè)誤差的影響,本文主要為大家介紹了python實(shí)現(xiàn)數(shù)據(jù)分箱的相關(guān)知識(shí),感興趣的可以了解下

數(shù)據(jù)分箱(英語:Data binning)是一種數(shù)據(jù)預(yù)處理方法,用于最大限度地減少小觀測(cè)誤差的影響。原始數(shù)據(jù)值被劃分為稱為bin的小區(qū)間,然后用為該bin計(jì)算的一般值替換它們。這對(duì)輸入數(shù)據(jù)具有平滑效果,并且在小數(shù)據(jù)集的情況下還可以減少過擬合的機(jī)會(huì)。

有兩種常見方法可以將數(shù)據(jù)劃分到箱中:

等頻分箱:分箱具有相等的頻率,每個(gè)區(qū)間包含大致相等的實(shí)例數(shù)量。

等寬分箱:分箱具有等寬,每個(gè)分箱的范圍被定義為[min + w],[min +2 w], [min + n w],

其中w = (max – min)/(箱數(shù))。

示例

等頻分箱

Input:[5, 10, 11, 13, 15, 35, 50, 55, 72, 92, 204, 215] 

Output:
[5, 10, 11, 13]
[15, 35, 50, 55]
[72, 92, 204, 215]

等寬分箱

Input: [5, 10, 11, 13, 15, 35, 50, 55, 72, 92, 204, 215]

Output:
[5, 10, 11, 13, 15, 35, 50, 55, 72]
[92]
[204, 215]

分箱方法的Python實(shí)現(xiàn)

# equal frequency 
def equifreq(arr1, m):	 
	a = len(arr1) 
	n = int(a / m) 
	for i in range(0, m): 
		arr = [] 
		for j in range(i * n, (i + 1) * n): 
			if j >= a: 
				break
			arr = arr + [arr1[j]] 
		print(arr) 

# equal width 
def equiwidth(arr1, m): 
	a = len(arr1) 
	w = int((max(arr1) - min(arr1)) / m) 
	min1 = min(arr1) 
	arr = [] 
	for i in range(0, m + 1): 
		arr = arr + [min1 + w * i] 
	arri=[] 
	
	for i in range(0, m): 
		temp = [] 
		for j in arr1: 
			if j >= arr[i] and j <= arr[i+1]: 
				temp += [j] 
		arri += [temp] 
	print(arri) 

# data to be binned 
data = [5, 10, 11, 13, 15, 35, 50, 55, 72, 92, 204, 215] 

# no of bins 
m = 3

print("equal frequency binning") 
equifreq(data, m) 

print("\n\nequal width binning") 
equiwidth(data, 3) 

輸出

equal frequency binning
[5, 10, 11, 13]
[15, 35, 50, 55]
[72, 92, 204, 215]


equal width binning
[[5, 10, 11, 13, 15, 35, 50, 55, 72], [92], [204, 215]] 

優(yōu)缺點(diǎn)

等頻分箱

優(yōu)點(diǎn):

能夠處理數(shù)據(jù)分布不均勻的情況,可以更好地利用數(shù)據(jù)的整體分布。

對(duì)于某些需要平衡數(shù)據(jù)分布的場(chǎng)景,等頻分箱可以更好地保證數(shù)據(jù)的代表性。

缺點(diǎn):

對(duì)于某些數(shù)據(jù)范圍較大的特征,等頻分箱可能會(huì)導(dǎo)致一些箱子中的數(shù)據(jù)范圍過大或過小的問題。

等頻分箱需要更多的計(jì)算資源,因?yàn)樾枰獙?duì)每個(gè)可能的值進(jìn)行計(jì)數(shù),然后找到每個(gè)箱子中的中位數(shù)。

等寬分箱

優(yōu)點(diǎn):

易于理解和實(shí)現(xiàn),根據(jù)業(yè)務(wù)理解,可快速對(duì)數(shù)據(jù)進(jìn)行初步的劃分。

對(duì)于異常值,等寬分箱可以將其放入單獨(dú)的箱子,從而更好地保護(hù)數(shù)據(jù)隱私。

缺點(diǎn):

對(duì)于數(shù)據(jù)分布不均勻的情況,可能會(huì)存在數(shù)據(jù)分布過于傾斜,導(dǎo)致某些箱子中的數(shù)據(jù)過多或過少的問題。

這種方法忽略了數(shù)據(jù)的具體取值范圍,可能導(dǎo)致一些重要的細(xì)節(jié)被忽略。

總的來說,選擇等頻分箱還是等寬分箱,需要根據(jù)實(shí)際的數(shù)據(jù)分布和業(yè)務(wù)需求來決定。

到此這篇關(guān)于python實(shí)現(xiàn)數(shù)據(jù)挖掘中分箱的示例代碼的文章就介紹到這了,更多相關(guān)python數(shù)據(jù)分箱內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Django實(shí)現(xiàn)支付寶付款和微信支付的示例代碼

    Django實(shí)現(xiàn)支付寶付款和微信支付的示例代碼

    支付寶支付和微信支付是當(dāng)今互聯(lián)網(wǎng)產(chǎn)品常用的功能,這篇文章主要介紹了Django實(shí)現(xiàn)支付寶付款和微信支付的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-07-07
  • Python實(shí)現(xiàn)一鍵摳圖的示例代碼

    Python實(shí)現(xiàn)一鍵摳圖的示例代碼

    在日常的工作和生活中,我們經(jīng)常會(huì)遇到需要摳圖的場(chǎng)景,即便是只有一張圖片需要摳,也會(huì)摳得我們不耐煩。本文將為大家分享一個(gè)Python實(shí)現(xiàn)一鍵摳圖的示例代碼,需要的可以參考一下
    2022-08-08
  • 最新評(píng)論

    南汇区| 上蔡县| 从江县| 五华县| 大邑县| 寻乌县| 松桃| 会宁县| 青神县| 克东县| 修文县| 龙川县| 洛扎县| 永川市| 哈巴河县| 鹤壁市| 靖江市| 谷城县| 保山市| 高阳县| 苏尼特右旗| 黄龙县| 哈尔滨市| 柳江县| 崇左市| 牙克石市| 青州市| 宜良县| 岐山县| 斗六市| 泾阳县| 贵州省| 万安县| 桐城市| 望奎县| 舒兰市| 龙井市| 建昌县| 报价| 东海县| 闽清县|