Построение остатков модели и игнорирование пропущенных значений в R, чтобы получить правильное облако точек белого шума - PullRequest
0 голосов
/ 07 марта 2019

У меня есть данные об уровнях СО2 во времени (co2_mm_mlo$decimal_date для времени и co2_mm_mlo$interpolated для уровней СО2), и я установил линейную модель, используя

model<-lm(co2_mm_mlo$interpolated ~ co2_mm_mlo$decimal_date)

, а затем нанесли на график временной ряд и модель.

R plot

Теперь я хочу нанести на график остатки модели по месяцам (которые хранятся в co2_mm_mlo$months), используя

plot(co2_mm_mlo$months,resid(model))

но из-за некоторых значений Missong я получаю много хороших значений и около семи выбросов.

Residuals

Как я могу игнорировать эти значения, чтобы получить нормальное облако точек белого шума?

Должен ли я где-нибудь использовать na.action = na.pass?

Обновление : данные взяты из текстового файла , который мне пришлось загрузить, и я переименовал переменные внутри в date month decimal date average и т. д. Я импортировал данные из файла с помощью меню «Файл»> «Импорт набора данных»> «Из текста (база)» ...

1 Ответ

1 голос
/ 07 марта 2019

Может быть, отфильтровать их по значению? У меня нет ваших данных - полезно опубликовать воспроизводимый пример вашего вопроса с кодом + данные + ошибки и т. Д., Поэтому я составил пример ниже.

Здесь я создаю фрейм данных, добавляю несколько хитрых точек, подгоняю линейную модель и затем просматриваю остатки. Исходя из этого, я отфильтровываю те остатки, которые больше 100, и реплотирую.

# Set RNG seed
set.seed(42)

# Create dummy data frame
df <- data.frame(time = seq(1960, 2010, by = 0.01))
df$value <- 1:nrow(df) + rnorm(nrow(df), 0, 10)

# Look at data
plot(df)

# Add a few dodgy points
df[sample(1:nrow(df), 5), "value"] <- runif(5, 100, 1000)

# Run linear regression
fit <- lm(value ~ time, data = df)

# Plot residuals to identify outliers 
plot(df$time, resid(fit))

# Filtering index
ind_filt <- abs(resid(fit)) < 100

# Filtered results
plot(df$time[ind_filt], resid(fit)[ind_filt])

Создано в 2019-03-07 пакетом Представление (v0.2.1)

...