python统计分析基本方法汇总
Python 是统计分析的强大工具,特别是当结合了如 NumPy、SciPy、Pandas、Statsmodels 和 Scikit-learn 等库时。以下是一些基本的统计分析方法和相应的 Python 实现:
1. 描述性统计
描述性统计涉及数据的汇总和简化,以提供数据集的快照。
-
均值(Mean):
import pandas as pd series.mean()
-
中位数(Median):
series.median()
-
众数(Mode):
import scipy.stats as stats mode = stats.mode(series)
-
最大值和最小值(Max and Min):
series.max(), series.min()
-
标准差(Standard Deviation):
series.std()
-
方差(Variance):
series.var()
-
四分位数(Quartiles):
series.quantile([0.25, 0.5, 0.75])
2. 概率分布
概率分布描述了随机变量的可能值及其发生的概率。
- 正态分布(Normal Distribution):
import scipy.stats as stats mu, sigma = 0, 0.1 # mean and standard deviation x = np.linspace(mu - 3*sigma, mu + 3*sigma, 100) y = stats.norm.pdf(x, mu, sigma) plt.plot(x, y)
3. 假设检验
假设检验用于确定样本数据是否足以支持一个特定的假设。
-
t检验(t-test):
stats.ttest_1samp(data, popmean=0)
-
卡方检验(Chi-square Test):
stats.chisquare(f_obs, f_exp)
4. 相关性和协方差
相关性衡量两个变量之间的线性关系,协方差衡量变量之间的变化如何相关联。
-
皮尔逊相关系数(Pearson Correlation Coefficient):
series.corr(other_series)
-
斯皮尔曼等级相关系数(Spearman's Rank Correlation Coefficient):
stats.spearmanr(x, y)
5. 回归分析
回归分析用于模拟变量之间的关系,预测未来值。
- 线性回归(Linear Regression):
from sklearn.linear_model import LinearRegression model = LinearRegression() model.fit(X, y)
6. 时间序列分析
时间序列分析涉及对按时间顺序排列的数据点进行分析。
- 自相关(Autocorrelation):
from statsmodels.tsa.stattools import acf acf(series, nlags=20)
7. 非参数检验
非参数检验不依赖于数据的分布假设。
- 曼-惠特尼U检验(Mann-Whitney U Test):
stats.mannwhitneyu(x, y)
8. 多变量分析
多变量分析涉及两个或多个变量的统计分析。
- 主成分分析(PCA):
from sklearn.decomposition import PCA pca = PCA(n_components=2) pca.fit(X)
这些是 Python 中一些基本的统计分析方法。根据你的具体需求,你可能需要使用不同的库和函数来执行这些分析。在实际应用中,你可能还需要进行数据清洗、数据转换、异常值处理等步骤,以确保分析的准确性。
均数与标准差
某省的高考分数经过标准化以后,最低分为100分,最高分为900分,平均分为500分,标准差为100分。用计算机模拟从该总体中随机抽取20名考生的分数见下表。试计算考生分数的均数与标准差。