您好,登錄后才能下訂單哦!
小編給大家分享一下python如何實現信息熵的計算代碼,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
1、簡單易用,與C/C++、Java、C# 等傳統語言相比,Python對代碼格式的要求沒有那么嚴格;2、Python屬于開源的,所有人都可以看到源代碼,并且可以被移植在許多平臺上使用;3、Python面向對象,能夠支持面向過程編程,也支持面向對象編程;4、Python是一種解釋性語言,Python寫的程序不需要編譯成二進制代碼,可以直接從源代碼運行程序;5、Python功能強大,擁有的模塊眾多,基本能夠實現所有的常見功能。
1、什么是信息熵?
1948年香農提出了信息熵(Entropy)的概念。
信息理論:
1、從信息的完整性上進行的描述:
當系統的有序狀態一致時,數據越集中的地方熵值越小,數據越分散的地方熵值越大。
2、從信息的有序性上進行的描述:
當數據量一致時,系統越有序,熵值越低;系統越混亂或者分散,熵值越高。
“信息熵” (information entropy)是度量樣本集合純度最常用的一種指標。
二、python實現信息熵的計算代碼
1、導入庫
import numpy as np import pandas as pd
2、 準備數據
data = pd.DataFrame( {'學歷': ['專科', '專科', '專科', '專科', '專科', '本科', '本科', '本科', '本科', '本科', '研究生', '研究生', '研究生', '研究生', '研究生'], '婚否': ['否', '否', '是', '是', '否', '否', '否', '是', '否', '否', '否', '否', '是', '是', '否'], '是否有車': ['否', '否', '否', '是', '否', '否', '否', '是', '是', '是', '是', '是', '否', '否', '否'], '收入水平': ['中', '高', '高', '中', '中', '中', '高', '高', '很高', '很高', '很高', '高', '高', '很高', '中'], '類別': ['否', '否', '是', '是', '否', '否', '否', '是', '是', '是', '是', '是', '是', '是', '否']})
3、定義信息熵函數
# 定義計算信息熵的函數:計算Infor(D) def infor(data): a = pd.value_counts(data) / len(data) return sum(np.log2(a) * a * (-1))
4、數據測試
# print(infor(data["學歷"])) #測試結果為: 1.584962500721156
以上是“python如何實現信息熵的計算代碼”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。