栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

熊猫频率表中的描述性统计

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

熊猫频率表中的描述性统计

这是一个用于计算频率分布的描述统计量的小函数:

# from __future__ import division (for Python 2)def descriptives_from_agg(values, freqs):    values = np.array(values)    freqs = np.array(freqs)    arg_sorted = np.argsort(values)    values = values[arg_sorted]    freqs = freqs[arg_sorted]    count = freqs.sum()    fx = values * freqs    mean = fx.sum() / count    variance = ((freqs * values**2).sum() / count) - mean**2    variance = count / (count - 1) * variance  # dof correction for sample variance    std = np.sqrt(variance)    minimum = np.min(values)    maximum = np.max(values)    cumcount = np.cumsum(freqs)    Q1 = values[np.searchsorted(cumcount, 0.25*count)]    Q2 = values[np.searchsorted(cumcount, 0.50*count)]    Q3 = values[np.searchsorted(cumcount, 0.75*count)]    idx = ['count', 'mean', 'std', 'min', '25%', '50%', '75%', 'max']    result = pd.Series([count, mean, std, minimum, Q1, Q2, Q3, maximum], index=idx)    return result

演示:

np.random.seed(0)val = np.random.normal(100, 5, 1000).astype(int)pd.Series(val).describe()Out: count    1000.000000mean       99.274000std         4.945845min        84.00000025%        96.00000050%        99.00000075%       103.000000max       113.000000dtype: float64vc = pd.value_counts(val)descriptives_from_agg(vc.index, vc.values)Out: count    1000.000000mean       99.274000std         4.945845min        84.00000025%        96.00000050%        99.00000075%       103.000000max       113.000000dtype: float64

请注意,这不能处理NaN,并且未经适当测试。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/470531.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号