问题标签 [scipy.stats]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
53 浏览

python - 查找平均值落在一个范围内的概率 - Python,matplotlib

我是 matplotlib 和统计的新手。尝试通过以下示例进行学习,并在理解和解决方案方面需要一些帮助。

我在下面添加了条形图图像。我有 1992、1993、1994 和 1995 四年的样本数据。我为它们的均值和误差范围绘制了 4 个条形图。此外,我允许用户绘制一个矩形来选择 y 轴上的范围。这在图像中显示为灰色水平矩形,ymax=46132 和 ymin=37527。现在的任务是将每个条形图与这个 y 轴范围进行比较,并评估每个分布值是否落在 y 轴上选定范围内的概率,并根据底部的颜色图对条形图进行相应的着色。

在此处输入图像描述

我已经使用以下代码来查找此概率,但它没有显示正确的结果。df2 有 4 行,其中包含每个条形的平均值和标准差。ymax=46132 和 ymin=37527。

下面是输出的 cdf 值。所有都接近 0,因此 cmap 为所有条形图呈现浅色。根据我的理解,在图像中当前的 y 轴范围内,1993 年的条形图应该用深色绘制(应该有更高的概率),1992 年和 1995 年用浅色绘制(概率较低),而 1994 年可能会用 -颜色之间。

请帮助我了解我做错了什么以及如何解决这个问题。

0 投票
2 回答
165 浏览

python - 相当于 Python 中的“ksdensity”MATLAB 内置函数

我需要以下 MATLAB 代码的 python 等效代码:

我找到下面的 python 代码,但我不知道如何提供它的cdf. 如果您能指导我,我将不胜感激。

0 投票
1 回答
990 浏览

python - 如何在python中找到高于第二个标准差的值的百分比?

问题陈述 - 假设变量 X 有一个钟形分布,平均值为 150,标准差为 20。X 值在 190 以上的百分比是多少?

到目前为止我的代码:

我知道 68% 的 X 位于 1 个标准差内,即(在 130 到 170 之间),95% 位于 2 个标准差内(110 到 190)。

但是如何找到高于 190 的值的百分比?(我写了 2.50 作为答案,但它不正确)

0 投票
1 回答
1168 浏览

python - 如何在python中查找给定范围内的值的百分比?

问题陈述 - 变量 X 的平均值为 15,标准差为 2。

介于 8 和 17 之间的 X 值的最小百分比是多少?

我知道 68-95-99.7 经验法则。从谷歌我发现 1.5 个标准差内的值的百分比是 86.64%。到目前为止我的代码:

据我了解,

13-17 在 1 个标准偏差内,具有 68% 的值。

9-21 将是具有 99.7% 值的 3 个标准偏差。

7-23 是 4 个标准差。所以 8 比平均值低 3.5 个标准差。

如何找到从 8 到 17 的值的百分比?

0 投票
3 回答
3007 浏览

python - 如何从python中的正态分布计算百分位数?

问题陈述 - 随机变量 X 是 N(25, 4)。求 X 的指定百分位数:

一个。第 10 个百分位

湾。第 90 个百分位

C。第 80 个百分位

d。第 50 个百分位

尝试 1

我的代码:

... 像那样。我从https://sphweb.bumc.bu.edu/otlt/mph-modules/bs/bs704_probability/bs704_probability10.html中给出的 Zscore 表中得到了值

尝试 2

但是根据实践平台的隐藏测试用例,答案是不正确的。谁能告诉我计算答案的正确方法?是否有任何 scipy.stats 功能?

0 投票
1 回答
135 浏览

python - 加快从叠加截断正态分布中绘制随机值

我想从一个分布中抽取 N 个随机样本,该分布是两个截断的正态分布之和。rv_continuous我通过子类化并提供一个 pdf 来获得我想要的东西scipy.stats,该 pdf 是两个给定 pdf 的平均值:

但是,使用:

非常,每个随机值大约需要 5 秒。

我确信这可以更快地完成,但我不知道该怎么做。我是否应该将我的分布定义为(非截断)正态分布的总和,然后强制截断?我在这个方向上做了一些测试,但这只是快了大约 10 倍,因此仍然很慢。

谷歌告诉我,我可能需要使用逆变换采样并覆盖该_rvs方法,但我未能使其适用于我的截断分布。

0 投票
2 回答
550 浏览

python - 如何使用python找出样本均值在+/-一个总体均值单位内的概率为0.95的区间?

我是统计和数据科学领域的初学者,所以请您善待我。

我必须在python中解决以下问题:

问题陈述 - 假设总体变量 X 为 N(3, 0.3) 且 n = 20。必须选择多大的区间才能使样本均值位于总体均值 μ 的 ±a 单位内的概率为 0.95?

我知道 68% 的数据在 1 个标准差内,即 2.7 到 3.3。95% 的数据在 2 个标准偏差范围内,即 2.4 到 3.6。

我的代码:

输出:

但是答案 (ba) 不正确,因为它与隐藏测试用例的预定义答案不匹配。

在打印 a,b 值时,我得到:

a= 2.412010804637984

b= 3.587989195362016

可能是我没有正确回答问题,或者我没有以正确的方式计算。

已编辑

尝试 2

使用概念 μ=¯ ± Z(σ/√n)。¯ 是样本均值。μ 是总体平均值。95% 是置信区间。

尝试 3

尝试 4

所有尝试都显示不正确的答案。

请建议我该怎么做。

0 投票
1 回答
159 浏览

pandas - 寻找在两个熊猫列之间获取 pearsonr 的有效方法

当第三列满足某些条件时,我正在尝试找到一种方法来获取数据框中两列之间的人员相关性和 p 值。

df =

桶ID 强度 BW25113
825.326 3459870 0.5
825.326 8923429 0.95
734.321 12124 0.4
734.321 2387499 0.3

我最初尝试了一些 pd.Series.corr()非常快的功能,并按照我想要的方式获得最终输出:

然后,这给了我(大部分)想要的表:

桶ID 组织 相关性
734.321 强度 1.0
825.326 强度 1.0
734.321 BW25113 -1.0
825.326 BW25113 1.0

这适用于给我个人相关性,但不是 p 值,这将有助于确定相关性的相关性。

有没有办法以这种方式获得与相关联的 p 值,pd.Series.corr()或者某个版本的scipy.stats.pearsonr 迭代每个 BucketID 的数据帧会更有效?我尝试了这种口味的东西,但速度非常慢(几十分钟而不是几秒钟)。

提前感谢您的帮助和/或评论。

0 投票
1 回答
135 浏览

python - Scipy Compute Mann Whitney U 沿多个切片

给定以下数组:

我想为各个样本的每个切片运行一次 Mann-Whitney(-Wilcoxon) U 检验,并将结果填充到一个输出数组中,其中一个切片用于 U 统计量,另一个用于 p 值。我知道我可以像这样单独运行它们:

输出:

期望的输出:

我已经尝试过np.apply_along_axis,但数组参数只需要一个输入,而我有 2 个。此外,我需要尽可能快的解决方案,因为作为模拟的一部分,我将在数千个切片上执行此操作。

提前致谢!

0 投票
1 回答
49 浏览

numpy - 拟合自定义分布 scipy.stats 会溢出

我正在尝试将广义错误分布拟合到我拥有的某些数据中。分布形式为 在此处输入图像描述

我尝试了以下实现

然而,这给

如何正确实施此分发?我正在尝试拟合真实数据(不是问题中生成的玩具正常数据)