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

データ フレームには 4 日間の売上高が欠落していることに注意してください。

売上を時間の経過とともに視覚化する単純な折れ線グラフを作成すると、次のようになります。

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

Rの欠損値を補間する

欠損値を埋めるには、 zooパッケージのna.estimate()関数とdplyrパッケージのmutate()関数を使用できます。

 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.estimate()関数によって選択された値は、データの傾向と非常によく一致しているように見えることに注意してください。

追加リソース

次のチュートリアルでは、R で欠損値を処理する方法に関する追加情報を提供します。

Rで欠損値を見つけて数える方法
Rで欠損値をすべて代入する方法
Rでis.na関数を使用する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です