當前位置:首頁 » 編程語言 » python數據相關性分析

python數據相關性分析

發布時間: 2023-01-29 06:41:15

python數據分析有什麼用

Python的語法簡單,代碼可讀性高,容易入門,有利於初學者學習;當我們進行數據處理的時候,我們希望將數據變得數值化,變成計算機可以運作的數字形式,我們可以直接使用一行列表推導式完成,十分簡單。
Python在數據分析和交互、探索性計算以及數據可視化等方面都有非常成熟的庫和活躍的社區,讓Python成為數據任務處理重要解決方案。在數據處理和分析方面,Python擁有numpy、pandas、matplotlib、scikit-learn、ipython等優秀的庫以及工具,尤其是pandas在處理數據方面有著絕對優勢。
Python擁有強大的通用編程能力,有別於R語言,Python不僅在數據分析方面能力強大,在爬蟲、WEB、自動化運維甚至於游戲等領域都有非常不錯的作用,公司只需要使用一種技術就可以完成全部服務,有利於業務融合,也可以提高工作效率。
Python是人工智慧首選的編程語言,在人工智慧時代,Python成為最受歡迎的編程語言。得益於Python簡潔、豐富的庫和社區,大部分深度學習框架都優先支持Python語言。

② 如何用python進行數據分析

1、Python數據分析流程及學習路徑

數據分析的流程概括起來主要是:讀寫、處理計算、分析建模和可視化四個部分。在不同的步驟中會用到不同的Python工具。每一步的主題也包含眾多內容。

根據每個部分需要用到的工具,Python數據分析的學習路徑如下:

相關推薦:《Python入門教程》

2、利用Python讀寫數據

Python讀寫數據,主要包括以下內容:

我們以一小段代碼來看:

可見,僅需簡短的兩三行代碼即可實現Python讀入EXCEL文件。

3、利用Python處理和計算數據

在第一步和第二步,我們主要使用的是Python的工具庫NumPy和pandas。其中,NumPy主要用於矢量化的科學計算,pandas主要用於表型數據處理。

4、利用Python分析建模

在分析和建模方面,主要包括Statsmdels和Scikit-learn兩個庫。

Statsmodels允許用戶瀏覽數據,估計統計模型和執行統計測試。可以為不同類型的數據和每個估算器提供廣泛的描述性統計,統計測試,繪圖函數和結果統計列表。

Scikit-leran則是著名的機器學習庫,可以迅速使用各類機器學習演算法

5、利用Python數據可視化

數據可視化是數據工作中的一項重要內容,它可以輔助分析也可以展示結果。

③ Python數據分析(八):農糧組織數據集探索性分析(EDA)

這里我們用 FAO(Food and Agriculture Organization) 組織提供的數據集,練習一下如何利用python進行探索性數據分析。

我們先導入需要用到的包

接下來,載入數據集

看一下數據量,

看一下數據的信息,

我們先來看一下variable,variable_full這兩列的信息,

看一下統計了多少國家,

看一下有多少個時間周期,

看一下時間周期有哪些,

我們看一下某一列某個指標的缺失值的個數,比如variable是total_area時缺失值的個數,

我們通過幾個維度來進行數據的分析:

我們按照上面的處理繼續,現在我們想統計一下對於一個時間周期來說,不同國家在這個周期內的變化情況,

我們也可以按照國家分類,查看某個國家在不同時期的變化,

我們還可以根據屬性,查看不同國家在不同周期內的變化情況,

我們還可以給定國家和指標,查看這個國家在這個指標上的變化情況,

我們還有region(區域)沒有查看,我們來看一下:

通過上圖可以看出,區域太多,不便於觀察,我們可以將一些區域進行合並。減少區域數量有助於模型評估,可以創建一個字典來查找新的,更簡單的區域(亞洲,北美洲,南美洲,大洋洲)

我們來看一下數據變化,

緊接著上面的數據處理,我們重新導入一下包,這次有一些新包,

我們看一下水資源的情況,

通過上圖可以看出只有一小部分國家報告了可利用的水資源總量,這些國家中只有極少數國家擁有最近一段時間的數據,我們將刪除變數,因為這么少的數據點會導致很多問題。

接下來我們看一下全國降雨指數,

全國降雨在2002年以後不再報到,所以我們也刪除這個數據,

我們單獨拿出一個洲來進行分析,舉例南美洲,我們來看一下數據的完整性,

我們也可以指定不同的指標,

接下來,我們使用 pandas_profiling 來對單變數以及多變數之間的關系進行統計一下,

這里我們要計算的是,比如

我們按照 rural_pop 從小到大進行排序,發現的確有幾個國家的農村人口是負數,

人口數目是不可能小於0,所以這說明數據有問題,存在臟數據,如果做分析預測時,要注意將這些臟數據處理一下。

接下來我們看一下偏度,我們規定,

正態分布的偏度應為零,負偏度表示左偏,正偏表示右偏。

偏度計算完後,我們計算一下峰度, 峰度也是一個正態分布,峰度不能為負,只能是正數 ,越大說明越陡峭,

接下來我們看一下,如果數據分布非常不均勻該怎麼辦呢,

上圖是2013-2017年國家總人數的分布,通過上圖我們發現,人口量少於200000(不考慮單位)的國家非常多,人口大於1200000的國家非常少,如果我們需要建模的話,這種數據我們是不能要的。這個時候我們應該怎麼辦呢?

通常,遇到這種情況,使用 log變換 將其變為正常。 對數變換 是數據變換的一種常用方式,數據變換的目的在於使數據的呈現方式接近我們所希望的前提假設,從而更好的進行統計推斷。

接下來,我們用log轉換一下,並看一下它的偏度和峰值,

可以看出偏度下降了很多,減少了傾斜。

可以發現峰度也下降了,接下來我們看一下經過log轉換後的數據分布,

雖然數據還有一些偏度,但是明顯好了很多,呈現的分布也比較標准。

首先我們先來看一下美國的人口總數隨時間的變化,

接下來,我們查看北美洲每個國家人口總數隨著時間的變化,

這個時候我們發現,一些國家由於人口數量本身就少,所以整個圖像顯示的不明顯,我們可以改變一下參照指標,那我們通過什麼標准化?我們可以選擇一個國家的最小、平均、中位數、最大值...或任何其他位置。那我們選擇最小值,這樣我們就能看到每個國家的起始人口上的增長。

我們也可以用熱度圖來展示,用顏色的深淺來比較大小關系,

接下來我們分析一下水資源的分布情況,

我們可以進行一下log轉換,

我們用熱度圖畫一下,

連續值可以畫成散點圖,方便觀看,
我們來看一下隨著季節變化,人均GDP的變化情況,

相關程度:
相關度量兩個變數之間的線性關系的強度,我們可以用相關性來識別變數。

現在我們單獨拿出來一個指標分析是什麼因素與人均GDP的變化有關系,正相關就是積極影響,負相關就是消極影響。

當我們在畫圖的時候也可以考慮一下利用bined設置一下區間,比如說連續值我們可以分成幾個區間進行分析,這里我們以人均GDP的數量來進行分析,我們可以將人均GDP的數據映射到不同的區間,比如人均GDP比較低,比較落後的國家,以及人均GDP比較高,比較發達的國家,這個也是我們經常需要的操作,

做一下log變換,這里是25個bin

我們指定一下分割的標准,

我們還可以看一下人均GDP較低,落後國家的內部數據,下面我們看一下內部數據分布情況,用boxplot進行畫圖,

對於這部分的分布,我們還可以統計看一下其他指標,如下圖所示,我們還可以看一下洪水的統計信息,

④ python數據統計分析

1. 常用函數庫

  scipy包中的stats模塊和statsmodels包是python常用的數據分析工具,scipy.stats以前有一個models子模塊,後來被移除了。這個模塊被重寫並成為了現在獨立的statsmodels包。

 scipy的stats包含一些比較基本的工具,比如:t檢驗,正態性檢驗,卡方檢驗之類,statsmodels提供了更為系統的統計模型,包括線性模型,時序分析,還包含數據集,做圖工具等等。

2. 小樣本數據的正態性檢驗

(1) 用途

 夏皮羅維爾克檢驗法 (Shapiro-Wilk) 用於檢驗參數提供的一組小樣本數據線是否符合正態分布,統計量越大則表示數據越符合正態分布,但是在非正態分布的小樣本數據中也經常會出現較大的W值。需要查表來估計其概率。由於原假設是其符合正態分布,所以當P值小於指定顯著水平時表示其不符合正態分布。

 正態性檢驗是數據分析的第一步,數據是否符合正態性決定了後續使用不同的分析和預測方法,當數據不符合正態性分布時,我們可以通過不同的轉換方法把非正太態數據轉換成正態分布後再使用相應的統計方法進行下一步操作。

(2) 示例

(3) 結果分析

 返回結果 p-value=0.029035290703177452,比指定的顯著水平(一般為5%)小,則拒絕假設:x不服從正態分布。

3. 檢驗樣本是否服務某一分布

(1) 用途

 科爾莫戈羅夫檢驗(Kolmogorov-Smirnov test),檢驗樣本數據是否服從某一分布,僅適用於連續分布的檢驗。下例中用它檢驗正態分布。

(2) 示例

(3) 結果分析

 生成300個服從N(0,1)標准正態分布的隨機數,在使用k-s檢驗該數據是否服從正態分布,提出假設:x從正態分布。最終返回的結果,p-value=0.9260909172362317,比指定的顯著水平(一般為5%)大,則我們不能拒絕假設:x服從正態分布。這並不是說x服從正態分布一定是正確的,而是說沒有充分的證據證明x不服從正態分布。因此我們的假設被接受,認為x服從正態分布。如果p-value小於我們指定的顯著性水平,則我們可以肯定地拒絕提出的假設,認為x肯定不服從正態分布,這個拒絕是絕對正確的。

4.方差齊性檢驗

(1) 用途

 方差反映了一組數據與其平均值的偏離程度,方差齊性檢驗用以檢驗兩組或多組數據與其平均值偏離程度是否存在差異,也是很多檢驗和演算法的先決條件。

(2) 示例

(3) 結果分析

 返回結果 p-value=0.19337536323599344, 比指定的顯著水平(假設為5%)大,認為兩組數據具有方差齊性。

5. 圖形描述相關性

(1) 用途

 最常用的兩變數相關性分析,是用作圖描述相關性,圖的橫軸是一個變數,縱軸是另一變數,畫散點圖,從圖中可以直觀地看到相關性的方向和強弱,線性正相關一般形成由左下到右上的圖形;負面相關則是從左上到右下的圖形,還有一些非線性相關也能從圖中觀察到。

(2) 示例

(3) 結果分析

 從圖中可以看到明顯的正相關趨勢。

6. 正態資料的相關分析

(1) 用途

 皮爾森相關系數(Pearson correlation coefficient)是反應兩變數之間線性相關程度的統計量,用它來分析正態分布的兩個連續型變數之間的相關性。常用於分析自變數之間,以及自變數和因變數之間的相關性。

(2) 示例

(3) 結果分析

 返回結果的第一個值為相關系數表示線性相關程度,其取值范圍在[-1,1],絕對值越接近1,說明兩個變數的相關性越強,絕對值越接近0說明兩個變數的相關性越差。當兩個變數完全不相關時相關系數為0。第二個值為p-value,統計學上,一般當p-value<0.05時,可以認為兩變數存在相關性。

7. 非正態資料的相關分析

(1) 用途

 斯皮爾曼等級相關系數(Spearman』s correlation coefficient for ranked data ),它主要用於評價順序變數間的線性相關關系,在計算過程中,只考慮變數值的順序(rank, 值或稱等級),而不考慮變數值的大小。常用於計算類型變數的相關性。

(2) 示例

(3) 結果分析

 返回結果的第一個值為相關系數表示線性相關程度,本例中correlation趨近於1表示正相關。第二個值為p-value,p-value越小,表示相關程度越顯著。

8. 單樣本T檢驗

(1) 用途

 單樣本T檢驗,用於檢驗數據是否來自一致均值的總體,T檢驗主要是以均值為核心的檢驗。注意以下幾種T檢驗都是雙側T檢驗。

(2) 示例

(3) 結果分析

 本例中生成了2列100行的數組,ttest_1samp的第二個參數是分別對兩列估計的均值,p-value返回結果,第一列1.47820719e-06比指定的顯著水平(一般為5%)小,認為差異顯著,拒絕假設;第二列2.83088106e-01大於指定顯著水平,不能拒絕假設:服從正態分布。

9. 兩獨立樣本T檢驗

(1) 用途

 由於比較兩組數據是否來自於同一正態分布的總體。注意:如果要比較的兩組數據不滿足方差齊性, 需要在ttest_ind()函數中添加參數equal_var = False。

(2) 示例

(3) 結果分析

 返回結果的第一個值為統計量,第二個值為p-value,pvalue=0.19313343989106416,比指定的顯著水平(一般為5%)大,不能拒絕假設,兩組數據來自於同一總結,兩組數據之間無差異。

10. 配對樣本T檢驗

(1) 用途

 配對樣本T檢驗可視為單樣本T檢驗的擴展,檢驗的對象由一群來自正態分布獨立樣本更改為二群配對樣本觀測值之差。它常用於比較同一受試對象處理的前後差異,或者按照某一條件進行兩兩配對分別給與不同處理的受試對象之間是否存在差異。

(2) 示例

(3) 結果分析

 返回結果的第一個值為統計量,第二個值為p-value,pvalue=0.80964043445811551,比指定的顯著水平(一般為5%)大,不能拒絕假設。

11. 單因素方差分析

(1) 用途

 方差分析(Analysis of Variance,簡稱ANOVA),又稱F檢驗,用於兩個及兩個以上樣本均數差別的顯著性檢驗。方差分析主要是考慮各組之間的平均數差別。

 單因素方差分析(One-wayAnova),是檢驗由單一因素影響的多組樣本某因變數的均值是否有顯著差異。

 當因變數Y是數值型,自變數X是分類值,通常的做法是按X的類別把實例成分幾組,分析Y值在X的不同分組中是否存在差異。

(2) 示例

(3) 結果分析

 返回結果的第一個值為統計量,它由組間差異除以組間差異得到,上例中組間差異很大,第二個返回值p-value=6.2231520821576832e-19小於邊界值(一般為0.05),拒絕原假設, 即認為以上三組數據存在統計學差異,並不能判斷是哪兩組之間存在差異 。只有兩組數據時,效果同 stats.levene 一樣。

12. 多因素方差分析

(1) 用途

 當有兩個或者兩個以上自變數對因變數產生影響時,可以用多因素方差分析的方法來進行分析。它不僅要考慮每個因素的主效應,還要考慮因素之間的交互效應。

(2) 示例

(3) 結果分析

 上述程序定義了公式,公式中,"~"用於隔離因變數和自變數,」+「用於分隔各個自變數, ":"表示兩個自變數交互影響。從返回結果的P值可以看出,X1和X2的值組間差異不大,而組合後的T:G的組間有明顯差異。

13. 卡方檢驗

(1) 用途

 上面介紹的T檢驗是參數檢驗,卡方檢驗是一種非參數檢驗方法。相對來說,非參數檢驗對數據分布的要求比較寬松,並且也不要求太大數據量。卡方檢驗是一種對計數資料的假設檢驗方法,主要是比較理論頻數和實際頻數的吻合程度。常用於特徵選擇,比如,檢驗男人和女人在是否患有高血壓上有無區別,如果有區別,則說明性別與是否患有高血壓有關,在後續分析時就需要把性別這個分類變數放入模型訓練。

 基本數據有R行C列, 故通稱RC列聯表(contingency table), 簡稱RC表,它是觀測數據按兩個或更多屬性(定性變數)分類時所列出的頻數表。

(2) 示例

(3) 結果分析

 卡方檢驗函數的參數是列聯表中的頻數,返回結果第一個值為統計量值,第二個結果為p-value值,p-value=0.54543425102570975,比指定的顯著水平(一般5%)大,不能拒絕原假設,即相關性不顯著。第三個結果是自由度,第四個結果的數組是列聯表的期望值分布。

14. 單變數統計分析

(1) 用途

 單變數統計描述是數據分析中最簡單的形式,其中被分析的數據只包含一個變數,不處理原因或關系。單變數分析的主要目的是通過對數據的統計描述了解當前數據的基本情況,並找出數據的分布模型。

 單變數數據統計描述從集中趨勢上看,指標有:均值,中位數,分位數,眾數;從離散程度上看,指標有:極差、四分位數、方差、標准差、協方差、變異系數,從分布上看,有偏度,峰度等。需要考慮的還有極大值,極小值(數值型變數)和頻數,構成比(分類或等級變數)。

 此外,還可以用統計圖直觀展示數據分布特徵,如:柱狀圖、正方圖、箱式圖、頻率多邊形和餅狀圖。

15. 多元線性回歸

(1) 用途

 多元線性回歸模型(multivariable linear regression model ),因變數Y(計量資料)往往受到多個變數X的影響,多元線性回歸模型用於計算各個自變數對因變數的影響程度,可以認為是對多維空間中的點做線性擬合。

(2) 示例

(3) 結果分析

 直接通過返回結果中各變數的P值與0.05比較,來判定對應的解釋變數的顯著性,P<0.05則認為自變數具有統計學意義,從上例中可以看到收入INCOME最有顯著性。

16. 邏輯回歸

(1) 用途

 當因變數Y為2分類變數(或多分類變數時)可以用相應的logistic回歸分析各個自變數對因變數的影響程度。

(2) 示例

(3) 結果分析

 直接通過返回結果中各變數的P值與0.05比較,來判定對應的解釋變數的顯著性,P<0.05則認為自變數具有統計學意義。

⑤ 如何用python進行相關性分析

用python進行相關性分析應該主要根據數據的內容進行分析,如果是帶標注的數據可以通過模型訓練的方式來獲取進行分析,找出對目標結果有最大影響的因素。如果沒有標注的話,可以用python構建網路知識圖譜手動分析,或者自己構建數據表格,人為觀察數據分布圖找到其中規律。一般來說相關性分析,主要依靠人為的觀察,並用數據和模型來輔助計算,從而獲得相對准確的結果。

⑥ 如何利用python進行數據的相關性分析

1. 運算優先順序
括弧、指數、乘、除、加、減
2
如果你使用了非 ASCII 字元而且碰到了編碼錯誤,記得在最頂端加一行 # -- coding: utf-8 --
3. Python格式化字元
使用更多的格式化字元。例如 %r 就是是非常有用的一個,它的含義是「不管什麼都列印出來」。
%s -- string
%% 百分號標記 #就是輸出一個%
%c 字元及其ASCII碼
%s 字元串
%d 有符號整數(十進制)
%u 無符號整數(十進制)
%o 無符號整數(八進制)
%x 無符號整數(十六進制)
%X 無符號整數(十六進制大寫字元)
%e 浮點數字(科學計數法)
%E 浮點數字(科學計數法,用E代替e)
%f 浮點數字(用小數點符號)
%g 浮點數字(根據值的大小採用%e或%f)
%G 浮點數字(類似於%g)
%p 指針(用十六進制列印值的內存地址)
%n 存儲輸出字元的數量放進參數列表的下一個變數中
%c 轉換成字元(ASCII 碼值,或者長度為一的字元串)
%r 優先用repr()函數進行字元串轉換(Python2.0新增)
%s 優先用str()函數進行字元串轉換
%d / %i 轉成有符號十進制數
%u 轉成無符號十進制數
%o 轉成無符號八進制數
%x / %X (Unsigned)轉成無符號十六進制數(x / X 代表轉換後的十六進制字元的大小寫)
%e / %E 轉成科學計數法(e / E控制輸出e / E)
%f / %F 轉成浮點數(小數部分自然截斷)
%g / %G : %e和%f / %E和%F 的簡寫
%% 輸出%
輔助符號 說明
* 定義寬度或者小數點精度
- 用做左對齊
+ 在正數前面顯示加號(+)
<sp> 在正數前面顯示空格
# 在八進制數前面顯示零(0),在十六進制前面顯示「0x」或者「0X」(取決於用的是「x」還是「X」)
0 顯示的數字前面填充「0」而不是默認的空格
m.n m 是顯示的最小總寬度,n 是小數點後的位數(如果可用的話)

⑦ python數據分析與應用-Python數據分析與應用 PDF 內部全資料版

給大家帶來的一篇關於Python數據相關的電子書資源,介紹了關於Python方面的內容,本書是由人民郵電出版社出版,格式為PDF,資源大小281 MB,黃紅梅 張良均編寫,目前豆瓣、亞馬遜、當當、京東等電子書綜合評分為:7.8。

內容介紹

目錄

第1章Python數據分析概述1

任務1.1認識數據分析1

1.1.1掌握數據分析的概念2

1.1.2掌握數據分析的流程2

1.1.3了解數據分析應用場景4

任務1.2熟悉Python數據分析的工具5

1.2.1了解數據分析常用工具6

1.2.2了解Python數據分析的優勢7

1.2.3了解Python數據分析常用類庫7

任務1.3安裝Python的Anaconda發行版9

1.3.1了解Python的Anaconda發行版9

1.3.2在Windows系統中安裝Anaconda9

1.3.3在Linux系統中安裝Anaconda12

任務1.4掌握Jupyter Notebook常用功能14

1.4.1掌握Jupyter Notebook的基本功能14

1.4.2掌握Jupyter Notebook的高 級功能16

小結19

課後習題19

第2章NumPy數值計算基礎21

任務2.1掌握NumPy數組對象ndarray21

2.1.1創建數組對象21

2.1.2生成隨機數27

2.1.3通過索引訪問數組29

2.1.4變換數組的形態31

任務2.2掌握NumPy矩陣與通用函數34

2.2.1創建NumPy矩陣34

2.2.2掌握ufunc函數37

任務2.3利用NumPy進行統計分析41

2.3.1讀/寫文件41

2.3.2使用函數進行簡單的統計分析44

2.3.3任務實現48

小結50

實訓50

實訓1創建數組並進行運算50

實訓2創建一個國際象棋的棋盤50

課後習題51

第3章Matplotlib數據可視化基礎52

任務3.1掌握繪圖基礎語法與常用參數52

3.1.1掌握pyplot基礎語法53

3.1.2設置pyplot的動態rc參數56

任務3.2分析特徵間的關系59

3.2.1繪制散點圖59

3.2.2繪制折線圖62

3.2.3任務實現65

任務3.3分析特徵內部數據分布與分散狀況68

3.3.1繪制直方圖68

3.3.2繪制餅圖70

3.3.3繪制箱線圖71

3.3.4任務實現73

小結77

實訓78

實訓1分析1996 2015年人口數據特徵間的關系78

實訓2分析1996 2015年人口數據各個特徵的分布與分散狀況78

課後習題79

第4章pandas統計分析基礎80

任務4.1讀/寫不同數據源的數據80

4.1.1讀/寫資料庫數據80

4.1.2讀/寫文本文件83

4.1.3讀/寫Excel文件87

4.1.4任務實現88

任務4.2掌握DataFrame的常用操作89

4.2.1查看DataFrame的常用屬性89

4.2.2查改增刪DataFrame數據91

4.2.3描述分析DataFrame數據101

4.2.4任務實現104

任務4.3轉換與處理時間序列數據107

4.3.1轉換字元串時間為標准時間107

4.3.2提取時間序列數據信息109

4.3.3加減時間數據110

4.3.4任務實現111

任務4.4使用分組聚合進行組內計算113

4.4.1使用groupby方法拆分數據114

4.4.2使用agg方法聚合數據116

4.4.3使用apply方法聚合數據119

4.4.4使用transform方法聚合數據121

4.4.5任務實現121

任務4.5創建透視表與交叉表123

4.5.1使用pivot_table函數創建透視表123

4.5.2使用crosstab函數創建交叉表127

4.5.3任務實現128

小結130

實訓130

實訓1讀取並查看P2P網路貸款數據主表的基本信息130

實訓2提取用戶信息更新表和登錄信息表的時間信息130

實訓3使用分組聚合方法進一步分析用戶信息更新表和登錄信息表131

實訓4對用戶信息更新表和登錄信息表進行長寬表轉換131

課後習題131

第5章使用pandas進行數據預處理133

任務5.1合並數據133

5.1.1堆疊合並數據133

5.1.2主鍵合並數據136

5.1.3重疊合並數據139

5.1.4任務實現140

任務5.2清洗數據141

5.2.1檢測與處理重復值141

5.2.2檢測與處理缺失值146

5.2.3檢測與處理異常值149

5.2.4任務實現152

任務5.3標准化數據154

5.3.1離差標准化數據154

5.3.2標准差標准化數據155

5.3.3小數定標標准化數據156

5.3.4任務實現157

任務5.4轉換數據158

5.4.1啞變數處理類別型數據158

5.4.2離散化連續型數據160

5.4.3任務實現162

小結163

實訓164

實訓1插補用戶用電量數據缺失值164

實訓2合並線損、用電量趨勢與線路告警數據164

實訓3標准化建模專家樣本數據164

課後習題165

第6章使用scikit-learn構建模型167

任務6.1使用sklearn轉換器處理數據167

6.1.1載入datasets模塊中的數據集167

6.1.2將數據集劃分為訓練集和測試集170

6.1.3使用sklearn轉換器進行數據預處理與降維172

6.1.4任務實現174

任務6.2構建並評價聚類模型176

6.2.1使用sklearn估計器構建聚類模型176

6.2.2評價聚類模型179

6.2.3任務實現182

任務6.3構建並評價分類模型183

6.3.1使用sklearn估計器構建分類模型183

6.3.2評價分類模型186

6.3.3任務實現188

任務6.4構建並評價回歸模型190

6.4.1使用sklearn估計器構建線性回歸模型190

6.4.2評價回歸模型193

6.4.3任務實現194

小結196

實訓196

實訓1使用sklearn處理wine和wine_quality數據集196

實訓2構建基於wine數據集的K-Means聚類模型196

實訓3構建基於wine數據集的SVM分類模型197

實訓4構建基於wine_quality數據集的回歸模型197

課後習題198

第7章航空公司客戶價值分析199

任務7.1了解航空公司現狀與客戶價值分析199

7.1.1了解航空公司現狀200

7.1.2認識客戶價值分析201

7.1.3熟悉航空客戶價值分析的步驟與流程201

任務7.2預處理航空客戶數據202

7.2.1處理數據缺失值與異常值202

7.2.2構建航空客戶價值分析關鍵特徵202

7.2.3標准化LRFMC模型的5個特徵206

7.2.4任務實現207

任務7.3使用K-Means演算法進行客戶分群209

7.3.1了解K-Means聚類演算法209

7.3.2分析聚類結果210

7.3.3模型應用213

7.3.4任務實現214

小結215

實訓215

實訓1處理信用卡數據異常值215

實訓2構造信用卡客戶風險評價關鍵特徵217

實訓3構建K-Means聚類模型218

課後習題218

第8章財政收入預測分析220

任務8.1了解財政收入預測的背景與方法220

8.1.1分析財政收入預測背景220

8.1.2了解財政收入預測的方法222

8.1.3熟悉財政收入預測的步驟與流程223

任務8.2分析財政收入數據特徵的相關性223

8.2.1了解相關性分析223

8.2.2分析計算結果224

8.2.3任務實現225

任務8.3使用Lasso回歸選取財政收入預測的關鍵特徵225

8.3.1了解Lasso回歸方法226

8.3.2分析Lasso回歸結果227

8.3.3任務實現227

任務8.4使用灰色預測和SVR構建財政收入預測模型228

8.4.1了解灰色預測演算法228

8.4.2了解SVR演算法229

8.4.3分析預測結果232

8.4.4任務實現234

小結236

實訓236

實訓1求取企業所得稅各特徵間的相關系數236

實訓2選取企業所得稅預測關鍵特徵237

實訓3構建企業所得稅預測模型237

課後習題237

第9章家用熱水器用戶行為分析與事件識別239

任務9.1了解家用熱水器用戶行為分析的背景與步驟239

9.1.1分析家用熱水器行業現狀240

9.1.2了解熱水器採集數據基本情況240

9.1.3熟悉家用熱水器用戶行為分析的步驟與流程241

任務9.2預處理熱水器用戶用水數據242

9.2.1刪除冗餘特徵242

9.2.2劃分用水事件243

9.2.3確定單次用水事件時長閾值244

9.2.4任務實現246

任務9.3構建用水行為特徵並篩選用水事件247

9.3.1構建用水時長與頻率特徵248

9.3.2構建用水量與波動特徵249

9.3.3篩選候選洗浴事件250

9.3.4任務實現251

任務9.4構建行為事件分析的BP神經網路模型255

9.4.1了解BP神經網路演算法原理255

9.4.2構建模型259

9.4.3評估模型260

9.4.4任務實現260

小結263

實訓263

實訓1清洗運營商客戶數據263

實訓2篩選客戶運營商數據264

實訓3構建神經網路預測模型265

課後習題265

附錄A267

附錄B270

參考文獻295

學習筆記

Jupyter Notebook(此前被稱為 IPython notebook)是一個互動式筆記本,支持運行 40 多種編程語言。 Jupyter Notebook 的本質是一個 Web 應用程序,便於創建和共享文學化程序文檔,支持實時代碼,數學方程,可視化和 markdown。 用途包括:數據清理和轉換,數值模擬,統計建模,機器學習等等 。 定義 (推薦學習:Python視頻教程) 用戶可以通過電子郵件,Dropbox,GitHub 和 Jupyter Notebook Viewer,將 Jupyter Notebook 分享給其他人。 在Jupyter Notebook 中,代碼可以實時的生成圖像,視頻,LaTeX和JavaScript。 使用 數據挖掘領域中最熱門的比賽 Kaggle 里的資料都是Jupyter 格式 。 架構 Jupyter組件 Jupyter包含以下組件: Jupyter Notebook 和 ……

本文實例講述了Python實現的微信好友數據分析功能。分享給大家供大家參考,具體如下: 這里主要利用python對個人微信好友進行分析並把結果輸出到一個html文檔當中,主要用到的python包為 itchat , pandas , pyecharts 等 1、安裝itchat 微信的python sdk,用來獲取個人好友關系。獲取的代碼 如下: import itchatimport pandas as pdfrom pyecharts import Geo, Baritchat.login()friends = itchat.get_friends(update=True)[0:]def User2dict(User): User_dict = {} User_dict["NickName"] = User["NickName"] if User["NickName"] else "NaN" User_dict["City"] = User["City"] if User["City"] else "NaN" User_dict["Sex"] = User["Sex"] if User["Sex"] else 0 User_dict["Signature"] = User["Signature"] if User["Signature"] else "NaN" ……

基於微信開放的個人號介面python庫itchat,實現對微信好友的獲取,並對省份、性別、微信簽名做數據分析。 效果: 直接上代碼,建三個空文本文件stopwords.txt,newdit.txt、unionWords.txt,下載字體simhei.ttf或刪除字體要求的代碼,就可以直接運行。 #wxfriends.py 2018-07-09import itchatimport sysimport pandas as pdimport matplotlib.pyplot as pltplt.rcParams['font.sans-serif']=['SimHei']#繪圖時可以顯示中文plt.rcParams['axes.unicode_minus']=False#繪圖時可以顯示中文import jiemport jieba.posseg as psegfrom scipy.misc import imreadfrom wordcloud import WordCloudfrom os import path#解決編碼問題non_bmp_map = dict.fromkeys(range(0x10000, sys.maxunicode + 1), 0xfffd) #獲取好友信息def getFriends():……

Python數據分析之雙色球基於線性回歸演算法預測下期中獎結果示例

本文實例講述了Python數據分析之雙色球基於線性回歸演算法預測下期中獎結果。分享給大家供大家參考,具體如下: 前面講述了關於雙色球的各種演算法,這里將進行下期雙色球號碼的預測,想想有些小激動啊。 代碼中使用了線性回歸演算法,這個場景使用這個演算法,預測效果一般,各位可以考慮使用其他演算法嘗試結果。 發現之前有很多代碼都是重復的工作,為了讓代碼看的更優雅,定義了函數,去調用,頓時高大上了 #!/usr/bin/python# -*- coding:UTF-8 -*-#導入需要的包import pandas as pdimport numpy as npimport matplotlib.pyplot as pltimport operatorfrom sklearn import datasets,linear_modelfrom sklearn.linear_model import LogisticRegression#讀取文件d……

以上就是本次介紹的Python數據電子書的全部相關內容,希望我們整理的資源能夠幫助到大家,感謝大家對鬼鬼的支持。

注·獲取方式:私信(666)

⑧ Python數據分析 | 數據描述性分析

首先導入一些必要的數據處理包和可視化的包,讀文檔數據並通過前幾行查看數據欄位。

對於我的數據來說,由於數據量比較大,因此對於缺失值可以直接做刪除處理。

得到最終的數據,並提取需要的列作為特徵。

對類別數據進行統計:

類別型欄位包括location、cpc_class、pa_country、pa_state、pa_city、assignee六個欄位,其中:

單變數統計描述是數據分析中最簡單的形式,其中被分析的數據只包含一個變數,不處理原因或關系。單變數分析的主要目的是通過對數據的統計描述了解當前數據的基本情況,並找出數據的分布模型。
單變數數據統計描述從集中趨勢上看,指標有:均值,中位數,分位數,眾數;從離散程度上看,指標有:極差、四分位數、方差、標准差、協方差、變異系數,從分布上看,有偏度,峰度等。需要考慮的還有極大值,極小值(數值型變數)和頻數,構成比(分類或等級變數)。

對於數值型數據,首先希望了解一下數據取值范圍的分布,因此可以用統計圖直觀展示數據分布特徵,如:柱狀圖、正方圖、箱式圖、頻率多邊形和餅狀圖。

按照發布的時間先後作為橫坐標,數值范圍的分布情況如圖所示.

還可以根據最終分類的結果查看這些數值數據在不同類別上的分布統計。

箱線圖可以更直觀的查看異常值的分布情況。

異常值指數據中的離群點,此處定義超出上下四分位數差值的1.5倍的范圍為異常值,查看異常值的位置。

參考:
python數據分析之數據分布 - yancheng111 - 博客園
python數據統計分析 -

科爾莫戈羅夫檢驗(Kolmogorov-Smirnov test),檢驗樣本數據是否服從某一分布,僅適用於連續分布的檢驗。下例中用它檢驗正態分布。

在使用k-s檢驗該數據是否服從正態分布,提出假設:x從正態分布。最終返回的結果,p-value=0.9260909172362317,比指定的顯著水平(一般為5%)大,則我們不能拒絕假設:x服從正態分布。這並不是說x服從正態分布一定是正確的,而是說沒有充分的證據證明x不服從正態分布。因此我們的假設被接受,認為x服從正態分布。如果p-value小於我們指定的顯著性水平,則我們可以肯定的拒絕提出的假設,認為x肯定不服從正態分布,這個拒絕是絕對正確的。

衡量兩個變數的相關性至少有以下三個方法:

皮爾森相關系數(Pearson correlation coefficient) 是反應倆變數之間線性相關程度的統計量,用它來分析正態分布的兩個連續型變數之間的相關性。常用於分析自變數之間,以及自變數和因變數之間的相關性。

返回結果的第一個值為相關系數表示線性相關程度,其取值范圍在[-1,1],絕對值越接近1,說明兩個變數的相關性越強,絕對值越接近0說明兩個變數的相關性越差。當兩個變數完全不相關時相關系數為0。第二個值為p-value,統計學上,一般當p-value<0.05時,可以認為兩變數存在相關性。

斯皮爾曼等級相關系數(Spearman』s correlation coefficient for ranked data ) ,它主要用於評價順序變數間的線性相關關系,在計算過程中,只考慮變數值的順序(rank, 秩或稱等級),而不考慮變數值的大小。常用於計算類型變數的相關性。

返回結果的第一個值為相關系數表示線性相關程度,本例中correlation趨近於1表示正相關。第二個值為p-value,p-value越小,表示相關程度越顯著。

kendall :

也可以直接對整體數據進行相關性分析,一般來說,相關系數取值和相關強度的關系是:0.8-1.0 極強 0.6-0.8 強 0.4-0.6 中等 0.2-0.4 弱 0.0-0.2 極弱。

⑨ python相關性分析如何生成兩個相關性最強的兩門

方法/步驟

  • 第一步我們首先需要知道相關性主要有兩個方向,一個是正方向一個是負方向,相關性系數是衡量兩個變數之間影響程度,如下圖所示:

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:582
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:876
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:571
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:757
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:673
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1000
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:244
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:103
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:795
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:701