如何在R语言中使用单行代码,去除使用boxplot函数为数据框列创建的多个箱线图中的异常值?


数据框可以包含多个数值列,我们只需使用包含数据框名称的boxplot函数即可为每一列创建箱线图。但是,如果要排除异常值,则可以使用outline参数。例如,如果我们有一个包含多个包含异常值数值列的数据框df,则可以按照以下方式创建无异常值的箱线图:boxplot(df,outline=FALSE)。

示例

考虑以下数据框

 在线演示

set.seed(151)
x1<-c(-5,rnorm(18),5)
x2<-c(-6,rnorm(18,1,0.2),6)
x3<-c(-10,rnorm(18,1,0.5),10)
x4<-c(-12,rnorm(18,1,0.1),12)
x5<-c(-15,rnorm(18,1,0.8),15)
df<-data.frame(x1,x2,x3,x4,x5)
df

输出

        x1          x2          x3       x4          x5
1 -5.00000000 -6.0000000 -10.0000000 -12.0000000 -15.0000000
2 -0.05153895 1.1347052  1.7228397    1.0216649    0.5526645
3 0.76573738  1.0620079  1.1305064    1.0407813    1.2837024
4 -0.14673959 0.7255857  1.9645730    0.9528957    0.9981142
5 -0.11318581 0.6726474  0.7000570    0.9979680    1.4502265
6 -0.39551140 0.9280697  1.0449886    0.9596063    1.1528738
7 0.78227595  1.2402230  1.2416571    1.0422124    0.8461499
8 -1.39747811 0.8708252  2.0122390    0.8796052    0.7642688
9 -1.01883832 0.8978782  1.8157587    0.8944016    0.3106157
10 0.22947586 0.8801754  1.6851877    1.0137921    2.2427285
11 0.67217297 1.1091206 -0.2065685    0.9715086    0.7642430
12 -0.48455178 0.9017412 0.5728289    1.0170325    2.6194087
13 0.56060896 1.0383071  1.2811840    0.9864194    2.3656720
14 0.06615648 0.8882945  0.8173998    0.8232215    1.4163186
15 -1.34987612 1.1845399 0.8286647    0.7985602    1.0698010
16 -0.24291581 1.2307996 0.6122296    1.0941148    1.3163952
17 -1.23674102 0.7255179 0.9935761    0.9278766    1.8420136
18 -1.47467765 1.2580363 1.3498465    0.9826864    1.0976992
19 2.43715892  1.2309804 1.0159605    0.8997847    0.9828209
20 5.00000000  6.0000000 10.0000000   12.0000000   15.0000000

为df的列创建箱线图 −

示例

boxplot(df)

输出

为df的列创建无异常值的箱线图 −

示例

boxplot(df,outline=FALSE)

输出

更新于: 2020年10月17日

489 次浏览

启动你的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.