问题标签 [iqr]

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 回答
191 浏览

octave - 分位数结果和 iqr 之间的差异

我试图更多地了解 Octave 如何计算四分位数和四分位数范围。考虑以下:

这个结果似乎与维基百科页面上关于四分位数的方法 3一致。鉴于四分位数范围是 Q3-Q1,我预计结果为 7.75。

但是,运行iqr(A)得出的结果为 6。显然,这是从原始数据的 10 减去 4 计算得出的,这与来自同一 Wikipedia 页面的方法 2一致。

使用两种不同方法计算 Q1 和 Q3 的原因是什么?

0 投票
2 回答
1479 浏览

r - 在for循环内绘制R中boxplot的分位数值

假设我有一个数据框空气质量。我做了一个 for 循环来绘制空气质量数据集的所有箱线图。

现在我想显示所有分位数值,即第一分位数、中位数、第三分位数和平均值,如下图所示。我在网上搜索了很多,但没有找到任何适合我需要的东西。下面是我想要绘制的所需图表:

在此处输入图像描述

0 投票
1 回答
634 浏览

r - 获取 R 中数据帧列表的一个表统计信息(最大值、最小值、IQR、...)

我有几个数据框。

我需要在一张表中为所有这些数据显示基本统计数据和四分位距 (IQR)。

不幸的是,summary函数不返回 IQR。另一方面,fivenum返回 IQR,但不能(?)应用于数据帧列表,我不需要中位数。

由于找不到合适的函数,我自己写了一个如下:

但是我想知道是否没有更简单的解决方案。

0 投票
1 回答
672 浏览

r - 在箱线图中查找多个箱的中位数

我是 R 的新手,在任何地方都找不到我的问题的答案。我有一个数据集,我为其创建了箱线图。我将年龄变量分为 5 组,以便箱线图看起来更好、更连贯,但我不知道如何找到不同年龄组的中位数、Q1 和 Q3。如果有人可以提供帮助,将不胜感激。

附件是我的箱线图的图片。箱形图

0 投票
0 回答
232 浏览

r - 1.5 IQR 的晶须上部距离不一致

相同的数据,使用两种不同的箱线图方法为晶须提供了两种不同的长度,我知道晶须只到达最大(最小)点,小于(大于)上(下)栅栏值。在我的情况下,他们选择了不同的最大值或栅栏计算错误。从我在文档中阅读的内容来看,这两种方法都使用 1.5 IRQ,并且围栏限制应该是 57.8,所以应该选择 39 而不是 58.8

http://docs.ggplot2.org/0.9.3.1/geom_boxplot.html

https://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/boxplot.stats.html

geom_boxplot

geom_boxplot 与箱线图 箱形图

更重要的是,我想使用任何函数从df$num统计数据(长度为 5 的向量,包含下胡须的极值、下“铰链”、中值、上“铰链”和上胡须的极值)中提取,所以我可以ggplot在特定位置添加文本。boxplot.stats(df$num)$stats下面提供了这些统计数据,但上面的胡须与我的结果不匹配ggplot

0 投票
0 回答
655 浏览

python - 在数组中查找异常值:如何让我的函数使用 IQR 方法输出异常值?

我试图让我的函数输出数组“数据”中的异常值。我创建了一个图表来显示异常值,但是我希望我的函数也能吐出实际值。基本上我希望在我的代码中输出值“220”。我怎样才能做到这一点?我的代码做错了什么?我觉得我的距离有些不对劲

0 投票
1 回答
264 浏览

r - reldist::wtd.iqr 给出与 IQR 相同的权重不同的结果

wtd.iqr使用包(版本 1.6.6)中的函数来计算加权四分位数范围(与 vanilla R包reldist返回的未加权四分位数范围相反),我得到了意想不到的结果。为了探索这个问题,我尝试将 的输出与.IQRstatsreldist::wtd.iqrIQR

令我惊讶的是,我发现即使输入值的权重相同(即当权重应该没有区别时)IQRreldist::wtd.iqr对于相同的输入值也会返回完全不同的输出值。

在上面的测试中,IQR似乎总是返回一个输出值大约wtd.iqr是相同输入值返回值的两倍。

对于不遵循上述分布的输入值,这种关系不一定成立:事实上,对于真实数据,我有时会从 得到负值wtd.iqr,我认为这是不可能的,但从未发现会发生这种情况IQR.

事实上,在我看来,wtd.iqr实际上可能返回的不是四分位数范围,而是四分位数之一。但是,如果这里有一个错误,它肯定不会那么明显——可以吗?

大概这两个函数以不同的方式定义了四分位距的概念,但是文档中没有任何线索。文档IQR说明它“计算 x 值的四分位数范围”,而文档wtd.iqr说明它“从加权样本返回经验四分位数范围”。

0 投票
1 回答
43 浏览

r - 如何过滤 IQR 低于特定值的矩阵列?

filter <- apply(expressionMatrix, 2, function (x) (colIQRs(x, na.rm = TRUE) < 1.6))

“参数 x 是数字类,应该是一个矩阵”错误被抛出。如何应对?我认为逻辑上这段代码是正确的:我删除了所有 IQR 值小于 1.6 的列。

如何在技术上编码?

0 投票
2 回答
2772 浏览

r - 为 data.frame 中的每一列计算 IQR

我对 R 很陌生,因此我的问题可能很基本,但是通过论坛搜索我还没有真正找到写答案。我有一个包含 24 个变量的 data.frame,在计算每列的平均值之后,我想计算每列的 IQR(0.25 和 0.75)。

据我了解,我必须将 df 转换为 IQR 的矩阵,并尝试了使用 do.call 或 apply 的几个选项,但并没有真正管理。

任何帮助将非常感激!

0 投票
1 回答
36 浏览

r - R:聚类数据样本并删除位于 1.5*四分位数范围之外的数据点

我有大量的 apx 15 mio 交易数据。以下形式的行:

我想运行两个循环:

1) 对所有“大小”之间的交易进行聚类/排序,比如说 1-100'000。

2) 然后根据“TradinCost”从 1) 中删除该集群中位于 1.5*四分位间距之外的那些交易

3) 将大小间隔从 1) 增加 100'00,现在对大小为 100'000-200'000 的交易运行相同的操作。这个循环上升到 5'000'000。

以下代码可以做到这一点,但我遇到的问题是速度/效率。如何编写代码来计算最多 20 mio 的样本。线?使用以下代码,需要几个小时。