R でゼロを na に置き換える方法 (例あり)


次のメソッドを使用して、R のゼロを NA 値に置き換えることができます。

方法 1: すべての列のゼロを NA に置き換える

 df[df == 0 ] <- NA

方法 2: 列内のゼロを NA に置き換える

 df$col1[df$col1 == 0 ] <- NA

方法 3: いくつかの特定の列でゼロを NA に置き換える

 df[, c(' col1 ', ' col2 ')][df[, c(' col1 ', ' col2 ')] == 0 ] <- NA

次の例は、次のデータ フレームで各メソッドを実際に使用する方法を示しています。

 #create data frame
df <- data. frame (player=c('A', 'B', 'C', 'D', 'E'),
                 pts=c(17, 12, NA, 9, 25),
                 rebs=c(3, 3, NA, NA, 8),
                 blocks=c(1, 1, 2, 4, NA))

#view data frame
df

  player pts rebs blocks
1 to 17 3 1
2 B 12 3 1
3 C NA NA 2
4 D 9 NA 4
5 E 25 8 NA

例 1: すべての列でゼロを NA に置き換えます

次のコードは、データ フレームのすべての列でゼロを NA 値に置き換える方法を示しています。

 #replace zero with NA in all columns
df[df == 0 ] <- NA

#view updated data frame
df

  player pts rebs blocks
1 to 17 3 1
2 B 12 3 1
3 C NA NA 2
4 D 9 NA 4
5 E 25 8 NA

データ フレームの各列でゼロが NA 値に置き換えられていることに注意してください。

例 2: 列内のゼロを NA に置き換えます

次のコードは、データ フレームの列でゼロを NA 値に置き換える方法を示しています。

 #replace zero with NA in 'rebs' column only
df$rebs[df$rebs == 0 ] <- NA

#view data frame
player pts rebs blocks
1 to 17 3 1
2 B 12 3 1
3 C 0 NA 2
4 D 9 NA 4
5 E 25 8 0

「rebs」列ではすべてのゼロが NA に置き換えられていますが、他のすべての列は変更されていないことに注意してください。

例 3: いくつかの特定の列でゼロを NA に置き換えます

次のコードは、データ フレームのいくつかの特定の列でゼロを NA 値に置き換える方法を示しています。

 #replace zero with NA values in 'pts' and 'rebs' columns only
df[, c(' pts ', ' rebs ')][df[, c(' pts ', ' rebs ')] == 0 ] <- NA

#view data frame
df

  player pts rebs blocks
1 to 17 3 1
2 B 12 3 1
3 C NA NA 2
4 D 9 NA 4
5 E 25 8 0

「pts」列と「rebs」列ではすべてのゼロが NA に置き換えられていますが、「blocks」列は変更されていないことに注意してください。

追加リソース

次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。

R で空白を NA に置き換える方法
R で NA を文字列に置き換える方法
R で NA を平均に置き換える方法
RでNAを中央値に置き換える方法

コメントを追加する

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