【问题标题】:Remove outliers from line graph从折线图中删除异常值
【发布时间】:2023-03-05 00:06:02
【问题描述】:

我想画一个有明显异常值的折线图。以下数据集是我正在使用的数据集的子集:

          Date PCROI
717 2014-06-28    38
718 2014-06-29    41
719 2014-06-30    36
720 2014-07-01   734
721 2014-07-02    60
722 2014-07-03    78
723 2014-07-04    90
724 2014-07-05    68
725 2014-07-06    55
726 2014-07-07    57

如果我使用ggplot2 绘制此图,则图表还不错..

ggplot(data = example, aes(x = Date, y = PCROI)) + geom_line()

不幸的是,我正在使用的时间序列比 PCROI 的中位数 51 长得多。 如何在不从数据集中排除值的情况下调整图表?

【问题讨论】:

  • 您是否尝试过将 y 轴放在对数刻度上?

标签: r ggplot2 outliers


【解决方案1】:

如果您有一些异常值标准(例如,如果 PRCOI 大于 100)并且您可以对已删除的点进行插值,则可以使用 subset 命令:

example <- read.table(header = TRUE, text = "          Date PCROI
717 2014-06-28    38
718 2014-06-29    41
719 2014-06-30    36
720 2014-07-01   734
721 2014-07-02    60
722 2014-07-03    78
723 2014-07-04    90
724 2014-07-05    68
725 2014-07-06    55
726 2014-07-07    57")
example$Date <- as.Date(example$Date)

ggplot(subset(example, PCROI <= 100), aes(Date, PCROI)) + geom_line()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-03
    • 1970-01-01
    • 2023-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-08
    • 1970-01-01
    相关资源
    最近更新 更多