以下為等深分箱以及encoding方法
#-*-coding:utf-8-*-"""CreatedonTueJan2917:26:382019@author:DamomWCG"""classEqual_depth_box:defequal_box(list,bin_num):'''param:list:youneedbinboxlistbin_num:youwantbinnum'''bin_num=10list.sort()#needsortcanreplacebyotherslist_2=list.copy()all_num=len(list_2)bin_sep=all_num/bin_numbin_sep=int(bin_sep)bin_list=[]foriinrange(1,bin_num):bin_dict={}bin_dict=i*bin_sepbin_list.append(bin_dict)bin_real_list=[]foriinbin_list:#print(i)bin_real_dict={}bin_real_dict=list[i]bin_real_list.append(bin_real_dict)returnbin_real_listdefreplace_box(list_1,replace_list):'''param:list_1:youneedbinlistreplace_list:fromequalbox,replacetheoriginallist'''importpandasaspdlist_max=max(list_1)list_min=min(list_1)replace_list.insert(0,list_min-1)#insertstartreplace_list.append(list_max+1)#insertendlist_2=pd.cut(list_1,bins=replace_list,labels=range(len(replace_list)-1)).tolist()returnlist_2if__name__=='__main__':importrandomlist_1=random.sample(range(1000),134)print(list_1.sort())print('real_list:{}'.format(list_1[0:50]))replace_list=bin_class.equal_box(list_1,10)list_2=bin_class.replace_box(list_1,replace_list)print('encode_list:{}'.format(list_2[0:50]))
原始git地址
https://github.com/DamonWCG/Equal_depth_box/blob/master/Equal_depth_box
使用案例
本案例數據為,我進行過一步的最優分箱,來做一步等深分箱來進行橫向對比。
原始數據形式
具體案例
#-*-coding:utf-8-*-"""CreatedonWedJan3016:17:192019@author:DamonWCG"""fromEqual_depth_boximport*importpandasaspddf=pd.read_csv('test.csv',encoding='gbk')df.columns####需要分箱的列list_1=df['deal_city_encoding'].tolist()#本方法是針對于list,所以對于series需要進行變換####需要分箱的個數replace_list=Equal_depth_box.equal_box(list_1,5)####替代的名稱##因為列表排序所以需要重新排序對齊,這里我有空再想想其他辦法df.sort_values(by="deal_city_encoding",inplace=True)list_2=Equal_depth_box.replace_box(list_1,replace_list)df['deal_city_bin_encoding']=list_2df.to_csv('df.csv',encoding='gbk',index=False)
本方法現階段encoding形式為數字型。
分箱最終結果形式
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...
2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...
:喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...
華西村是怎么富起來的?華西村就是靠走公有制的集體道路,才讓村里的大部分村民都富起來。華西村隸屬于江蘇省江陰市華士鎮,是一個享譽全國、世界知名的村莊。這個村子創造了一個個驚人奇跡,成為共同富裕的典范和中國農村改革的樣本,被譽為“天下第一村”。然而,半個多世紀以前,華西村也是貧困落后的村莊,不僅糧食生產沒有保障,一遇自然災害農民們不是背井離鄉就是家破人亡。如今,華西村是中國最富...
第一名:布加迪這是法國跑車品牌布加迪出口的豪華超跑。搭載8.0升w164渦輪增壓發動機,最大功率1500馬力,最大扭矩1600?!っ?。其百公里加速僅需2.5秒,最高時速可達420公里。當然,這款車的價格也很高,售價高達260萬美元。第2名:布加迪超級運動版這款車是世界上最快的量產跑車,最高時速可達431公里,百公里加速在2.5秒內。布加迪威龍于2010年9月在法蘭克福車展首發,最終被一家沃爾夫斯堡...
申請visa信用卡需要什么條件。以中國銀行為例,申請visa信用卡一般需要滿足以下條件:1、申請人年齡滿十八周歲,擁有完全民事行為能力;2、申請人持有有效身份證;3、申請人個人信用良好,沒有不良信用記錄;4、申請人擁有固定工作證明;5、申請人可以提供蓋有所在單位財務章的收入證明;6、申請人可以提供銀行存款、房產、汽車、股票以及債卷等財產證明;7、申請人可以提供社會養老保險證明。VISA信用卡的辦理...