python實現(xiàn)信息熵的計算代碼
1、什么是信息熵?
1948年香農(nóng)提出了信息熵(Entropy)的概念。
信息理論:
1、從信息的完整性上進行的描述:
當系統(tǒng)的有序狀態(tài)一致時,數(shù)據(jù)越集中的地方熵值越小,數(shù)據(jù)越分散的地方熵值越大。
2、從信息的有序性上進行的描述:
當數(shù)據(jù)量一致時,系統(tǒng)越有序,熵值越低;系統(tǒng)越混亂或者分散,熵值越高。
“信息熵”(informationentropy)是度量樣本集合純度最常用的一種指標。
二、python實現(xiàn)信息熵的計算代碼
1、導入庫
importnumpyasnp
importpandasaspd
2、準備數(shù)據(jù)
data=pd.DataFrame(
{'學歷':['???#39;,'???#39;,'專科','???#39;,'???#39;,'本科','本科','本科','本科','本科',
'研究生','研究生','研究生','研究生','研究生'],
'婚否':['否','否','是','是','否','否','否','是','否','否','否','否','是','是','否'],
'是否有車':['否','否','否','是','否','否','否','是','是','是','是','是','否','否',
'否'],
'收入水平':['中','高','高','中','中','中','高','高','很高','很高','很高','高','高',
'很高','中'],
'類別':['否','否','是','是','否','否','否','是','是','是','是','是','是','是','否']})
3、定義信息熵函數(shù)
#定義計算信息熵的函數(shù):計算Infor(D)
definfor(data):
a=pd.value_counts(data)/len(data)
returnsum(np.log2(a)*a*(-1))
4、數(shù)據(jù)測試
#print(infor(data["學歷"]))#測試結果為:1.584962500721156
以上就是python實現(xiàn)信息熵的計算代碼,希望能對大家有所幫助。更多Python學習教程請關注IT培訓機構:千鋒教育。