首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >熊猫如何计算sem()?

熊猫如何计算sem()?
EN

Stack Overflow用户
提问于 2017-04-05 14:22:34
回答 1查看 1.9K关注 0票数 2

第一批进口熊猫并创造正态分布完善的系列:

代码语言:javascript
复制
import pandas as pd

lst = [[5 for x in range(5)], [4 for x in range(4)], [3 for x in range(3)],
       [2 for x in range(2)], [1 for x in range(1)], [2 for x in range(2)],
       [3 for x in range(3)], [4 for x in range(4)], [5 for x in range(5)]]

lst = [item for sublists in lst for item in sublists]

series = pd.Series(lst)

让我们检查一下,这个分布是正常的:

代码语言:javascript
复制
print(round(sum(series - series.mean()) / series.count(), 1) == 0)
# if distribution is normal we'll see True

现在,让我们为宇宙打印sem():

代码语言:javascript
复制
print(series.sem(ddof=0))
# 0.21619987017

现在作为样本:

代码语言:javascript
复制
print(series.sem()) # ddof=1
# 0.220026713637

但我不明白熊猫如何计算出如果它在宇宙中工作的平均值的标准误差。有用吗?

代码语言:javascript
复制
se_x = sd_x / sqrt(len(x))

或者创建样本?如果它创建了样本,那么我可以设置多少以及如何设置它们的计数?

如果计数< 30,熊猫是如何计算样本sem的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-05 15:17:19

方法动态

代码语言:javascript
复制
    cls.sem = _make_stat_function_ddof(
        cls, 'sem', name, name2, axis_descr,
        "Return unbiased standard error of the mean over requested "
        "axis.\n\nNormalized by N-1 by default. This can be changed "
        "using the ddof argument",
        nanops.nansem)

代码语言:javascript
复制
@disallow('M8', 'm8')
def nansem(values, axis=None, skipna=True, ddof=1):
    var = nanvar(values, axis, skipna, ddof=ddof)

    mask = isnull(values)
    if not is_float_dtype(values.dtype):
        values = values.astype('f8')
    count, _ = _get_counts_nanvar(mask, axis, ddof, values.dtype)
    var = nanvar(values, axis, skipna, ddof=ddof)

    return np.sqrt(var) / np.sqrt(count)

您还可能希望检查scipy.stats模块中可用的方法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43233963

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档