在当今这个数据驱动的世界中,数据分析已成为许多行业的关键技能。掌握数据统计和分析方法,可以让你的数据“说话”,从而为决策提供有力支持。以下是一些常用的数据统计函数,帮助你轻松玩转数据分析。
1. 描述性统计
描述性统计是数据分析的基础,它可以帮助我们了解数据的集中趋势和离散程度。
1.1 平均数(Mean)
平均数是所有数值的总和除以数值个数,它反映了数据的平均水平。
def calculate_mean(data):
return sum(data) / len(data)
data = [10, 20, 30, 40, 50]
mean = calculate_mean(data)
print("平均数:", mean)
1.2 中位数(Median)
中位数是将一组数据从小到大排序后,位于中间位置的数值。它不受极端值的影响,更能反映数据的中心趋势。
def calculate_median(data):
sorted_data = sorted(data)
n = len(sorted_data)
if n % 2 == 0:
return (sorted_data[n // 2 - 1] + sorted_data[n // 2]) / 2
else:
return sorted_data[n // 2]
data = [10, 20, 30, 40, 50]
median = calculate_median(data)
print("中位数:", median)
1.3 众数(Mode)
众数是一组数据中出现次数最多的数值。它可以反映数据的集中趋势,但可能存在多个众数。
from collections import Counter
def calculate_mode(data):
counter = Counter(data)
mode = counter.most_common(1)[0][0]
return mode
data = [10, 20, 30, 40, 50, 50, 50]
mode = calculate_mode(data)
print("众数:", mode)
2. 推断性统计
推断性统计是利用样本数据对总体参数进行估计和推断的方法。
2.1 样本均值
样本均值是总体均值的无偏估计。它可以用来估计总体均值,并计算置信区间。
import numpy as np
data = [10, 20, 30, 40, 50]
mean = np.mean(data)
print("样本均值:", mean)
2.2 样本方差
样本方差是总体方差的无偏估计。它可以用来估计总体方差,并计算置信区间。
def calculate_variance(data):
mean = np.mean(data)
return sum((x - mean) ** 2 for x in data) / (len(data) - 1)
data = [10, 20, 30, 40, 50]
variance = calculate_variance(data)
print("样本方差:", variance)
3. 交叉表和卡方检验
交叉表和卡方检验可以用来分析两个分类变量之间的关系。
3.1 交叉表
交叉表可以展示两个分类变量之间的频数分布。
import pandas as pd
data = {'Category A': ['A', 'B', 'A', 'C', 'A'],
'Category B': ['B', 'A', 'B', 'C', 'A']}
df = pd.DataFrame(data)
cross_table = pd.crosstab(df['Category A'], df['Category B'])
print("交叉表:\n", cross_table)
3.2 卡方检验
卡方检验可以用来检验两个分类变量之间的独立性。
from scipy.stats import chi2_contingency
data = [[3, 7, 2],
[2, 6, 4],
[4, 2, 5],
[5, 1, 5]]
chi2, p, dof, expected = chi2_contingency(data)
print("卡方值:", chi2)
print("p值:", p)
掌握这些数据统计函数,可以帮助你轻松玩转数据分析。在实际应用中,你可以根据具体问题选择合适的函数,并结合可视化等方法,让你的数据“说话”,为决策提供有力支持。
