标签: confidence-interval

从样本数据计算置信区间

假设正态分布,我有样本数据,我想计算置信区间.

我已经找到并安装了numpy和scipy软件包,并且已经很难恢复平均值和标准差(numpy.mean(数据),数据是列表).任何关于获得样本置信区间的建议都会非常感激.

python statistics numpy confidence-interval

90
推荐指数
4
解决办法
14万
查看次数

逻辑回归预测的置信区间

在R predict.lm中,根据线性回归的结果计算预测,并提供计算这些预测的置信区间.根据手册,这些间隔是基于拟合的误差方差,而不是基于系数的误差间隔.

另一方面,基于逻辑和泊松回归计算预测的predict.glm(在其他几个中)没有置信区间的选项.我甚至很难想象如何计算这种置信区间,以便为泊松和逻辑回归提供有意义的见解.

是否存在为此类预测提供置信区间有意义的情况?他们怎么解释?这些案例中的假设是什么?

statistics r confidence-interval glm

61
推荐指数
1
解决办法
5万
查看次数

如何计算R中线性回归模型中斜率的95%置信区间

以下是R的入门统计练习:

使用rmr数据集,绘制代谢率与体重的关系.将线性回归模型拟合到关系中.根据拟合模型,体重70公斤的预测代谢率是多少?给出该线斜率的95%置信区间.

rmr数据集位于"ISwR"包中.它看起来像这样:

> rmr
   body.weight metabolic.rate
1         49.9           1079
2         50.8           1146
3         51.8           1115
4         52.6           1161
5         57.6           1325
6         61.4           1351
7         62.3           1402
8         64.9           1365
9         43.1            870
10        48.1           1372
11        52.2           1132
12        53.5           1172
13        55.0           1034
14        55.0           1155
15        56.0           1392
16        57.8           1090
17        59.0            982
18        59.0           1178
19        59.2           1342
20        59.5           1027
21        60.0           1316
22        62.1           1574
23        64.9           1526
24        66.0           1268
25 …
Run Code Online (Sandbox Code Playgroud)

statistics r linear-regression confidence-interval

43
推荐指数
1
解决办法
15万
查看次数

用scipy获得置信区间的正确方法

我有一个1维数据数组:

a = np.array([1,2,3,4,4,4,5,5,5,5,4,4,4,6,7,8])
Run Code Online (Sandbox Code Playgroud)

我希望获得68%置信区间(即:1西格玛).

在第一个评论这个回答指出,这可以实现使用scipy.stats.norm.intervalscipy.stats.norm功能,通过:

from scipy import stats
import numpy as np
mean, sigma = np.mean(a), np.std(a)

conf_int = stats.norm.interval(0.68, loc=mean, 
    scale=sigma)
Run Code Online (Sandbox Code Playgroud)

但是这篇文章中的评论指出,获得置信区间的实际正确方法是:

conf_int = stats.norm.interval(0.68, loc=mean, 
    scale=sigma / np.sqrt(len(a)))
Run Code Online (Sandbox Code Playgroud)

也就是说,sigma除以样本大小的平方根:np.sqrt(len(a)).

问题是:哪个版本是正确的?

python numpy scipy confidence-interval

33
推荐指数
3
解决办法
5万
查看次数

Python函数获取t统计量

我正在寻找一个Python函数(或编写我自己的函数,如果没有一个)来获取t统计量,以便在置信区间计算中使用.

我已经找到了表格,可以像这样给出各种概率/自由度的答案,但我希望能够针对任何给定的概率计算出这个.对于那些不熟悉这种自由度的人来说,样本-1中的数据点数(n)和顶部列标题的数字是概率(p),例如,如果使用0.05的双尾显着性水平,则使用0.05你正在查找用于计算95分置信度的t分数,如果你重复n次测试,结果将落在平均值+/-置信区间内.

我已经研究过在scipy.stats中使用各种函数,但是我看不到任何函数似乎允许我上面描述的简单输入.

Excel有一个简单的实现,例如获得1000的样本的t分数,我需要95%的信心我会使用:=TINV(0.05,999)得到分数~1.96

这是我到目前为止用于实现置信区间的代码,因为你可以看到我正在使用一种非常粗略的方法来获得目前的t分数(只是为perc_conf允许一些值并警告它不准确样本<1000):

# -*- coding: utf-8 -*-
from __future__ import division
import math

def mean(lst):
    # ? = 1/N ?(xi)
    return sum(lst) / float(len(lst))

def variance(lst):
    """
    Uses standard variance formula (sum of each (data point - mean) squared)
    all divided by number of data points
    """
    # ?² = 1/N ?((xi-?)²)
    mu = mean(lst)
    return 1.0/len(lst) * sum([(i-mu)**2 for i in lst])

def conf_int(lst, perc_conf=95):
    """
    Confidence interval - given a list …
Run Code Online (Sandbox Code Playgroud)

python statistics confidence-interval python-2.7

26
推荐指数
1
解决办法
3万
查看次数

从lme拟合中提取预测带

我有以下模型

x  <- rep(seq(0, 100, by=1), 10)
y  <- 15 + 2*rnorm(1010, 10, 4)*x + rnorm(1010, 20, 100)
id <- NULL
for(i in 1:10){ id <- c(id, rep(i,101)) }
dtfr <- data.frame(x=x,y=y, id=id)
library(nlme)
with(dtfr, summary(     lme(y~x, random=~1+x|id, na.action=na.omit)))
model.mx <- with(dtfr, (lme(y~x, random=~1+x|id, na.action=na.omit)))
pd       <- predict( model.mx, newdata=data.frame(x=0:100), level=0)
with(dtfr, plot(x, y))
lines(0:100, predict(model.mx, newdata=data.frame(x=0:100), level=0), col="darkred", lwd=7)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

predict,level=0我可以绘制平均人口反应.如何从nlme对象中提取和绘制整个群体的95%置信区间/预测带?

r prediction confidence-interval mixed-models

25
推荐指数
1
解决办法
2万
查看次数

scikit-learn - 具有置信区间的ROC曲线

我能够得到使用ROC曲线scikit-learnfpr,tpr,thresholds = metrics.roc_curve(y_true,y_pred, pos_label=1),其中y_true基于价值观的名单上我的黄金标准(即0负和1为正的情况下),并且y_pred是分数(例如一个对应列表,0.053497243,0.008521122,0.022781548,0.101885263,0.012913795,0.0,0.042881547[...])

我试图弄清楚如何在该曲线上添加置信区间,但是没有找到任何简单的方法来使用sklearn.

python confidence-interval roc scikit-learn

19
推荐指数
2
解决办法
1万
查看次数

用NA值绘制置信区间

我想使用Gviz包将置信区间映射到具有NA的数据.我修改了手动示例来揭露我的问题.首先作为手册曝光:

library(Gviz)

## Loading GRanges object
data(twoGroups)

## Plot data without NAs
dTrack <- DataTrack(twoGroups, name = "uniform")
tiff("Gviz_original.tiff", units="in", width=11, height=8.5, res=200, compress="lzw")
plotTracks(dTrack, groups = rep(c("control", "treated"),
                                each = 3), type = c("a", "p", "confint"))
graphics.off()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述 现在,使用包含NA值和值的数据na.rm=TRUE:

  ## Transforming in data frame
  df <- as.data.frame(twoGroups)

## Input NAs to look like my real data
df[ df <= 0 ] = NA
df <- df[,-4]
df <- df[,-4]
names(df) <- c("chr", "start", "end", …
Run Code Online (Sandbox Code Playgroud)

graphics plot r bioconductor confidence-interval

17
推荐指数
1
解决办法
1056
查看次数

如何在 Python 中绘制置信区间?

我最近开始使用 Python,但我无法理解如何绘制给定数据(或一组数据)的置信区间。我已经有一个函数,根据我传递给它的置信水平,给定一组测量值,计算上限和下限,但我不知道如何使用这两个值来绘制置信区间。我知道这里已经有人问过这个问题,但我没有找到有用的答案。

python confidence-interval python-3.x

17
推荐指数
3
解决办法
4万
查看次数

R中二项式数据的置信区间?

我知道我需要使用mean和sd来找到间隔,但是,如果问题是:

A survey of 1000 randomly chosen workers, 520 of them are female. Create a 95% confidence interval for the proportion of wokrers who are female based on survey.

我如何为此找到平均值和标准差?

statistics r probability confidence-interval

16
推荐指数
4
解决办法
3万
查看次数