在當今的數(shù)字化時代,數(shù)據(jù)已成為企業(yè)決策和業(yè)務(wù)增長的關(guān)鍵因素。無論是市場分析、客戶行為研究還是產(chǎn)品優(yōu)化,數(shù)據(jù)分析都扮演著至關(guān)重要的角色。要有效地利用這些數(shù)據(jù),掌握正確的數(shù)據(jù)分析工具和方法是必不可少的。為您介紹一系列實用的數(shù)據(jù)分析函數(shù)公式,幫助您更深入地理解數(shù)據(jù),做出更明智的決策。
一、描述性統(tǒng)計函數(shù)
1. 平均值(Mean)
平均值是所有數(shù)值的總和除以數(shù)值的數(shù)量。它是最基本的描述性統(tǒng)計量之一。
import pandas as pd
data = [1, 2, 3, 4, 5]
mean = data.mean()
print(mean)
2. 中位數(shù)(Median)
中位數(shù)是將數(shù)據(jù)集從小到大排序后位于中間位置的數(shù)。如果數(shù)據(jù)集的大小為奇數(shù),則中位數(shù)是中間的數(shù);如果為偶數(shù),則中位數(shù)是中間兩個數(shù)的平均值。
data = [1, 2, 3, 4, 5]
median = data.median()
print(median)
3. 眾數(shù)(Mode)
眾數(shù)是指在一組數(shù)據(jù)中出現(xiàn)次數(shù)最多的數(shù)值。它可以幫助了解數(shù)據(jù)的集中趨勢。
data = [1, 2, 2, 3, 3, 3]
mode = data.mode()
print(mode)
4. 方差(Variance)
方差衡量數(shù)據(jù)點與平均數(shù)之間的偏差程度。它是一個度量數(shù)據(jù)分散性的指標。
data = [1, 2, 3, 4, 5]
variance = data.var()
print(variance)
5. 標準差(Standard Deviation)
標準差是方差的平方根,用于衡量數(shù)據(jù)點與平均數(shù)的離散程度。
data = [1, 2, 3, 4, 5]
std_dev = data.std()
print(std_dev)
二、推斷性統(tǒng)計函數(shù)
1. 樣本均值(Sample Mean)
樣本均值是樣本中所有數(shù)值的平均值。它提供了一個關(guān)于總體均值的估計。
import numpy as np
data = [1, 2, 3, 4, 5]
sample_mean = np.mean(data)
print(sample_mean)
2. 樣本方差(Sample Variance)
樣本方差是樣本中每個數(shù)值與樣本均值之差的平方的平均值。它提供了對總體方差的一個估計。
data = [1, 2, 3, 4, 5]
sample_variance = np.var(data)
print(sample_variance)
3. 置信區(qū)間(Confidence Interval)
置信區(qū)間是一種估計方法,用于確定一個值或參數(shù)落在特定概率水平下的區(qū)間。它通?;跇颖緮?shù)據(jù)和假設(shè)檢驗的結(jié)果。
import scipy.stats as stats
data = [1, 2, 3, 4, 5]
confidence_interval = stats.norm.interval(0.95, loc=np.mean(data), scale=np.std(data))
print(confidence_interval)
三、回歸分析函數(shù)
1. 線性回歸(Linear Regression)
線性回歸是一種簡單而強大的預測模型,用于預測因變量與自變量之間的關(guān)系。它假設(shè)自變量的變化會導致因變量以線性方式變化。
import statsmodels.api as sm
# 示例:使用線性回歸模型預測銷售額
data = [['A', 200], ['B', 300], ['C', 400]]
X = [[1], [2], [3]]
y = [200, 300, 400]
model = sm.OLS(y, X).fit()
predictions = model.predict([[4]])
print(predictions)
2. 邏輯回歸(Logistic Regression)
邏輯回歸是一種用于分類問題的回歸模型,常用于預測事件發(fā)生的概率。它假設(shè)事件發(fā)生的概率與自變量的值有關(guān)。
import statsmodels.api as sm
# 示例:使用邏輯回歸模型預測是否購買商品
data = [['A', 'Yes'], ['B', 'No'], ['C', 'Yes']]
X = [[1], [2], [3]]
y = ['Yes', 'No', 'Yes']
model = sm.Logit(y, X).fit()
predictions = model.predict([[4]])
print(predictions)
四、時間序列分析函數(shù)
1. ARIMA模型(AutoRegressive Integrated Moving Average)
ARIMA模型是一種用于時間序列預測的方法,通過識別數(shù)據(jù)中的季節(jié)性和趨勢成分來建立模型。
import statsmodels.tsa.arima as arima
# 示例:使用ARIMA模型預測股票價格
data = [['AAPL', 200, 201, 202, 203], ['GOOGL', 200, 201, 202, 203]]
model = arima.ARIMA(data[1:], order=(1, 1, 1)).fit()
predictions = model.forecast(steps=1)
print(predictions)
2. SARIMA模型(Seasonal Autoregressive Integrated Moving Average)
SARIMA模型是一種處理季節(jié)性時間序列的方法,通過識別數(shù)據(jù)中的季節(jié)性成分來建立模型。
import statsmodels.tsa.seasonal as seasonal
# 示例:使用SARIMA模型預測季節(jié)性銷售數(shù)據(jù)
data = [['ABC', 'Jan', 'Feb', 'Mar', 'Apr'], ['XYZ', 'Jan', 'Feb', 'Mar', 'Apr']]
model = seasonal.SARIMA(data[1:], order=(1, 1, 1)).fit()
predictions = model.forecast(steps=1)
print(predictions)
五、機器學習算法函數(shù)
1. K-近鄰算法(K-Nearest Neighbors)
K-近鄰算法是一種基于實例的學習算法,通過計算每個訓練樣本到最近鄰居的距離來確定預測結(jié)果。它廣泛應(yīng)用于分類和回歸任務(wù)。
from sklearn.neighbors import KNeighborsClassifier
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# 加載數(shù)據(jù)集并劃分訓練集和測試集
data = load_iris()
X_train, X_test, y_train, y_test = train_test_split(data.data, data.target, test_size=0.3, random_state=42)
knn = KNeighborsClassifier(n_neighbors=3)
knn.fit(X_train, y_train)
predictions = knn.predict(X_test)
accuracy = accuracy_score(y_test, predictions)
print("Accuracy:", accuracy)
2. 決策樹算法(Decision Trees)
決策樹是一種基于樹形結(jié)構(gòu)進行分類和回歸的算法。它通過遞歸地構(gòu)建決策樹來提取特征和標簽之間的關(guān)系。
from sklearn.tree import DecisionTreeClassifier
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.metrics import classification_report
# 加載數(shù)據(jù)集并劃分訓練集和測試集
data = load_iris()
X_train, X_test, y_train, y_test = train_test_split(data.data, data.target, test_size=0.3, random_state=42)
dt = DecisionTreeClassifier()
dt.fit(X_train, y_train)
predictions = dt.predict(X_test)
print(classification_report(y_test, predictions))
六、可視化分析函數(shù)
1. 散點圖(Scatterplot)
散點圖是一種常用的可視化工具,用于展示兩個變量之間的關(guān)系。它可以幫助觀察者直觀地理解數(shù)據(jù)分布和趨勢。
import matplotlib.pyplot as plt
import seaborn as sns
# 示例:繪制銷售數(shù)據(jù)與季節(jié)的散點圖
data = [['A', 'Jan', 'Feb', 'Mar', 'Apr'], ['ABC', 100, 150, 200, 250], ['XYZ', 150, 200, 250, 300]]
plt.figure(figsize=(8, 6))
sns.scatterplot(x='Jan', y='Feb', data=data)
plt.title('Sales by Season')
plt.show()
2. 箱線圖(Boxplot)
箱線圖是一種用于展示數(shù)據(jù)分布范圍、中位數(shù)、四分位數(shù)等統(tǒng)計信息的圖表。它可以幫助觀察者了解數(shù)據(jù)的中心趨勢和離群值。
import matplotlib.pyplot as plt
import seaborn as sns
# 示例:繪制銷售數(shù)據(jù)的箱線圖
data = [['A', 'Jan', 'Feb', 'Mar', 'Apr'], ['ABC', 100, 150, 200, 250], ['XYZ', 150, 200, 250, 300]]
plt.figure(figsize=(8, 6))
sns.boxplot(x='Jan', y='Feb', data=data)
plt.title('Sales by Month')
plt.show()
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。