pandas 相關(guān)性和正態(tài)性分析的實踐
當(dāng)我們談?wù)撜龖B(tài)性(Normality)和相關(guān)性(Correlation)時,我們實際上在嘗試理解數(shù)據(jù)的分布模式和不同變量之間的關(guān)系。讓我們先來看看這兩個數(shù)學(xué)概念:
正態(tài)性(Normality)
正態(tài)性指的是數(shù)據(jù)的分布模式是否符合正態(tài)分布(也稱為高斯分布)。正態(tài)分布是一種連續(xù)概率分布,具有以下特征:
- 對稱性:正態(tài)分布是關(guān)于其均值對稱的,也就是說,它的左半部分和右半部分是鏡像對稱的。
- 集中性:正態(tài)分布的數(shù)據(jù)集中在其均值周圍,并且隨著距離均值的增加而逐漸減少。
- 確定性:正態(tài)分布由兩個參數(shù)完全確定,即均值(μ)和標準差(σ)。
正態(tài)性檢驗通常用于判斷一個數(shù)據(jù)集是否來自正態(tài)分布。通常使用的方法包括觀察直方圖、Q-Q圖(Quantile-Quantile Plot)以及一些統(tǒng)計檢驗,比如Shapiro-Wilk檢驗和Kolmogorov-Smirnov檢驗。
示例代碼:
import pandas as pd import numpy as np from scipy.stats import shapiro # 創(chuàng)建示例數(shù)據(jù) data = np.random.normal(loc=0, scale=1, size=1000) series = pd.Series(data) # Shapiro-Wilk檢驗 statistic, p_value = shapiro(series) # 解釋檢驗結(jié)果 if p_value > 0.05: print("數(shù)據(jù)可能符合正態(tài)分布") else: print("數(shù)據(jù)不符合正態(tài)分布")
相關(guān)性(Correlation)
相關(guān)性描述的是兩個變量之間的關(guān)系程度。相關(guān)性的測量通常使用相關(guān)系數(shù)來完成,最常見的是皮爾遜相關(guān)系數(shù)。皮爾遜相關(guān)系數(shù)的取值范圍在-1到1之間:
- 當(dāng)相關(guān)系數(shù)為1時,表示完全正相關(guān)。這意味著兩個變量的值以相同的比例增加或減少。
- 當(dāng)相關(guān)系數(shù)為-1時,表示完全負相關(guān)。這意味著兩個變量的值以相反的方向變化。
- 當(dāng)相關(guān)系數(shù)接近于0時,表示變量之間沒有線性關(guān)系。
需要注意的是,相關(guān)性并不意味著因果關(guān)系,即使兩個變量高度相關(guān),也不代表其中一個變量的變化導(dǎo)致了另一個變量的變化。
示例代碼:
import pandas as pd # 創(chuàng)建示例數(shù)據(jù) data = { 'A': [1, 2, 3, 4, 5], 'B': [5, 4, 3, 2, 1], 'C': [1, 1, 2, 2, 3] } df = pd.DataFrame(data) # 計算相關(guān)系數(shù) correlation_matrix = df.corr() print("相關(guān)系數(shù)矩陣:") print(correlation_matrix) 相關(guān)性和正態(tài)性綜合性示例: import pandas as pd import numpy as np from scipy.stats import shapiro from scipy.stats import pearsonr # 創(chuàng)建示例數(shù)據(jù)集 data = { 'A': np.random.normal(loc=0, scale=1, size=1000), 'B': np.random.normal(loc=0, scale=1, size=1000), 'C': np.random.normal(loc=0, scale=1, size=1000) } df = pd.DataFrame(data) # 正態(tài)性分析 for column in df.columns: series = df[column] statistic, p_value = shapiro(series) if p_value > 0.05: print(f"列 '{column}' 可能符合正態(tài)分布 (p-value={p_value:.4f})") else: print(f"列 '{column}' 不符合正態(tài)分布 (p-value={p_value:.4f})") # 相關(guān)性分析 correlation_matrix = df.corr() print("\n相關(guān)系數(shù)矩陣:") print(correlation_matrix) # 特定變量之間的相關(guān)性 for col1 in df.columns: for col2 in df.columns: if col1 != col2: correlation, p_value = pearsonr(df[col1], df[col2]) print(f"{col1} 和 {col2} 的相關(guān)系數(shù)為 {correlation:.4f} (p-value={p_value:.4f})")
這個示例代碼首先創(chuàng)建了一個包含三個變量的數(shù)據(jù)集,并對每個變量進行了正態(tài)性分析,然后計算了變量之間的相關(guān)系數(shù)。最后,它還輸出了特定變量之間的相關(guān)性及其顯著性水平(p-value)。通過這個更豐富的示例,我們可以更好地理解如何使用Pandas進行正態(tài)性分析和相關(guān)性分析,并且了解了這些分析的結(jié)果如何影響我們對數(shù)據(jù)的理解和解釋。
到此這篇關(guān)于pandas 相關(guān)性和正態(tài)性分析小結(jié)的文章就介紹到這了,更多相關(guān)pandas 相關(guān)性和正態(tài)性內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python 實現(xiàn)LeNet網(wǎng)絡(luò)模型的訓(xùn)練及預(yù)測
本文將為大家詳細講解如何使用CIFR10數(shù)據(jù)集訓(xùn)練模型以及用訓(xùn)練好的模型做預(yù)測。代碼具有一定價值,感興趣的小伙伴可以學(xué)習(xí)一下2021-11-11Python基礎(chǔ)教程之循環(huán)語句(for、while和嵌套循環(huán))
這篇文章主要給大家介紹了關(guān)于Python基礎(chǔ)教程之循環(huán)語句(for、while和嵌套循環(huán))的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03Python3.x+pyqtgraph實現(xiàn)數(shù)據(jù)可視化教程
這篇文章主要介紹了Python3.x+pyqtgraph實現(xiàn)數(shù)據(jù)可視化教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03Python使用Opencv打開筆記本電腦攝像頭報錯解問題及解決
這篇文章主要介紹了Python使用Opencv打開筆記本電腦攝像頭報錯解問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-06-06如何讀取.npy文件以及如何實現(xiàn)將數(shù)組保存為圖片
這篇文章主要介紹了如何讀取.npy文件以及如何實現(xiàn)將數(shù)組保存為圖片問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-02-02python中關(guān)于對super()函數(shù)疑問解惑
Python中的super()是用于調(diào)用父類(或父類的父類...)方法的函數(shù),主要用于多繼承,單繼承問題不大,下面這篇文章主要給大家介紹了關(guān)于python中關(guān)于對super()函數(shù)疑問解惑的相關(guān)資料,需要的朋友可以參考下2022-08-08