Table of contents
在统计学、数据挖掘、机器学习等领域,找到并移除异常值是一项非常常见的数据分析任务。 在这篇文章中,我们将告诉你如何 消除Excel中的异常值 .
下载工作手册
你可以从这里下载免费的练习Excel工作簿。
删除离群值.xlsx什么是Excel中的离群值?
一个 例外者 换句话说,离群值是指明显高于或低于数据集中其他数值的数值。
想一想,在一场板球比赛中,所有击球手的得分都在50分左右,但只有一名击球手打出了一个世纪(100分),另一名击球手以0分出局。
异常值是有问题的,因为它们会歪曲数据分析的结果,并出现误导性的结果。 因此,最好是找到异常值并将其去除,以获得一个平滑的数据集。
在Excel中去除异常值的3种方法
在本节中,你将学习如何 删除异常值 去除离群值是一个棘手的过程,所以要仔细阅读整篇文章。
1.利用Excel函数计算无异常值的平均值
ǞǞǞ TRIMMEAN函数 可以用来计算一个给定数据集的平均值,同时排除异常值。 要排除的数据点以百分比形式提供。 百分比值可以以十进制格式或百分比格式输入。
计算无异常值的平均数的语法是。
=TRIMMEAN(array, percent)在这里。
- 阵列 = 修剪和计算平均结果的数据范围
- 百分比 = 要排除的数据点的数量
让我们看看如何实现这个函数,以计算出去除异常值的结果。
考虑一下上图,我们有来自 细胞B5至B14 0和100 - 所以这些是 异常值 在我们的数据集中。
对于我们的数据集,用Excel计算不含离群值的均值(平均值)的公式是 三元模式(TRIMMEAN 功能是。
=trimmean(b5:b14,0.2)
在这里。
- B5:B14 = 修剪和计算平均结果的数据范围
- 0.2 (或20%) = 要排除的数据点的数量
如果数据集中的任何数字与数据集的其他部分有20%的差距,那么这个数字将被称为离群值。
如果你根据你的数据集编写公式并按 进入 ,你会得到 无异常值的计算平均值 在我们的例子中,你的数据集是什么? 细胞E6 持有计算出的平均值,即 23.50 .
为了检查答案是否正确,我们运行 平均值功能 在 细胞E5 其中返回平均数( 28.80 )的所有值的范围内 B5:B14 而在 细胞E7 ,我们运行另一个 平均数 通过手动输入所有的单元格,除了持有离群值的单元格,得到的回报是 23.50 作为结果。
所以我们可以说 三元期权(TRIMMEAN 函数可以成功地从给定的数据集中去除异常值,同时在Excel中计算出平均数。
阅读更多。 如何清除Excel中的公式(7+方法)
2.在Excel中删除数据集和折线图中的异常值
注意下图,我们有一些数据,在此基础上我们创建了一个折线图。 从折线图中,我们可以很容易地看到,在 数据点4和8是我们的离群值 .
现在我们来看看如何通过去除数据集中的离群值来平滑折线图。
在另一个单元格中(在我们的例子中,它是 细胞H6 ),写出以下公式。
=IF(AND(ABS(C6-C5)>$E$6,ABS(C6-C7)>$E$6),NA(),C6)
在这里。
- C6 = 保存数据集中第一个数据的单元格
- C5 = 第一个数据单元上方的单元格
- C7 = 第一个数据单元格下面的单元格
- $E$6 = 数据点之间的差异。
看一下我们的数据,似乎当一个数据点被 差10个单位 被指定为 例外者 所以我们把 10 在 细胞E6 并使之成为一个 绝对单元格参考 这样,在扫描和计算整个数据集时,这个单元格将被固定。
在按下 进入 ,你可以看到第一个数据仍然出现在结果单元格中。 H6 你在这里要做的是,只是构建一个公式,以便我们可以拖动 填充手柄 将公式应用于其余的单元格。
现在将该行向下拖动,用 填充手柄 你会看到原来存放异常值的单元格现在充满了 #N/A .
再看看现在的折线图,这已经是一个扁平化的图表,里面没有任何离谱的数值。
公式分解
=IF(
由于我们将在此基础上对数值进行比较,并提取结果,因此我们在公式中用 基金会 条件。
=IF(AND(
我们将比较当前的数据点和上面的单元格以及下面的单元格。 如果两个比较都是真的,我们才会将数据点作为结果显示出来。 因此,由于我们需要处理 "两个 "比较,所以我们应该利用 和函数 .
=IF(AND(ABS(
当我们对数据点进行减法时,一些数据可能会抛出负值。 而我们不想处理负值,因为负值总是与 "当差值为10时删除数据 "的条件相矛盾。 因此,为了确保我们总是有正面的结果,我们需要将比较包在一个 绝对值函数 .
=IF(AND(ABS(C6-C5)>$E$6)
在这里我们开始了我们的第一次比较。 我们简单地用当前值减去上面的值,看看结果是否大于存储在 细胞E6 并使该细胞成为一个 绝对参考 来保持单元格值的锁定。
=IF(AND(ABS(C6-C5)> $E$6,ABS(C6-C7)> $E$6)
接下来是用逗号隔开的第二部分比较,它将比较当前数据点和下一个数据点。
=IF(AND(ABS(C6-C5)>$E$6,ABS(C6-C7)>$E$6), NA()
现在我们放一个逗号,确定把 NA功能 在那里,如果两个 和 函数为真。
=IF(AND(ABS(C6-C5)>$E$6,ABS(C6-C7)>$E$6),NA(),C6)
而如果 和 函数不为真,那么我们要返回实际的数据点作为 基金会 所以我们输入一个逗号,并传递单元格参考号 C6 在那里。
阅读更多。 如何删除Excel中的数据验证(5种方法)
类似读物
- 如何删除Excel中的页眉(4种方法)
- 删除Excel中的虚线(5种快速方法)
- 如何从Excel中删除网格(6种简单方法)
- 移除Excel中的边框(4种快速方法)
- 如何删除Excel中的兼容模式(2种简单方法)
3.手动删除Excel中的异常值
在Excel中消除异常值的另一个简单方法是,只需对数据集的数值进行排序,并手动删除其中的顶部和底部数值。
要对数据进行排序。
- 选择 的数据集。
- 转到 排序 & 筛选 在 编辑工作 组,并选择其中一个 从小到大的排序 或 从大到小的排序 .
- 在我们的案例中,我们选择了 从小到大的排序 它将我们的数据集中的数字按升序排序,将最小的数字放在顶部,最大的数字放在底部。
现在只需手动删除这些数据,使数据集的离散值自由。
我们不建议在处理大型数据集时遵循这个过程。 当你的数据集很小,更容易查看时,你才可以应用这个程序,否则就不要实施。
阅读更多。 如何删除Excel中的排序(3种简单方法)
总结
这篇文章告诉你如何 移除异常值 我希望这篇文章能让你受益匪浅。 如果你对这个话题有任何疑问,请随时提问。