Как интерполировать пропущенные значения в R (включая пример)

Как интерполировать пропущенные значения в R (включая пример)

Вы можете использовать следующий базовый синтаксис для интерполяции отсутствующих значений в столбце фрейма данных в R:

library(dplyr)
library (zoo)

df <- df %>%
 mutate(column_name = na.approx (column_name))

В следующем примере показано, как использовать этот синтаксис на практике.

Пример: интерполяция пропущенных значений в R

Предположим, у нас есть следующий фрейм данных в R, который показывает общий объем продаж магазина за 15 дней подряд:

#create data frame
df <- data.frame(day=1:15,
 sales=c(3, 6, 8, 10, 14, 17, 20, NA, NA, NA, NA, 35, 39, 44, 49))

#view data frame
df

 day sales
1 1 3
2 2 6
3 3 8
4 4 10
5 5 14
6 6 17
7 7 20
8 8 NA
9 9 NA
10 10 NA
11 11 NA
12 12 35
13 13 39
14 14 44
15 15 49

Обратите внимание, что во фрейме данных отсутствуют данные о продажах за четыре дня.

Если мы создадим простую линейную диаграмму для визуализации продаж с течением времени, вот как это будет выглядеть:

#create line chart to visualize sales
plot(df$sales, type='o', pch= 16 , col='steelblue', xlab='Day', ylab='Sales') 
интерполировать пропущенные значения в R

Чтобы заполнить недостающие значения, мы можем использовать функцию na. приблизительно() из пакета zoo вместе с функцией mutate() из пакета dplyr :

library(dplyr)
library (zoo)

#interpolate missing values in 'sales' column
df <- df %>%
 mutate(sales = na.approx (sales))

#view updated data frame
df

 day sales
1 1 3
2 2 6
3 3 8
4 4 10
5 5 14
6 6 17
7 7 20
8 8 23
9 9 26
10 10 29
11 11 32
12 12 35
13 13 39
14 14 44
15 15 49

Обратите внимание, что каждое из отсутствующих значений было заменено.

Если мы создадим еще одну линейную диаграмму для визуализации обновленного фрейма данных, вот как она будет выглядеть:

#create line chart to visualize sales
plot(df$sales, type='o', pch= 16 , col='steelblue', xlab='Day', ylab='Sales') 

Обратите внимание, что значения, выбранные функцией na.appro() , вполне соответствуют тренду в данных.

Дополнительные ресурсы

В следующих руководствах представлена дополнительная информация о том, как обрабатывать отсутствующие значения в R:

Как найти и подсчитать пропущенные значения в R
Как заменить пропущенные значения в R
Как использовать функцию is.na в R

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.