0

データフレームを操作しようとしています。データ フレームに欠損値 (NA) が含まれているため、すべての NA を "." に置き換えたいと考えています。(ストリング)。

どうやってやるの?以下に例を示します。次のデータ フレームを検討してください。

   dataset1
   no      name
    1      John
    2      Paul
    3        NA
    4    Sophie

このデータセットを次のように変更するにはどうすればよいですか:

   dataset1
   no      name
    1      John
    2      Paul
    3         .
    4     Sophie

ありがとうございました、

4

2 に答える 2

4

あなたのデータ:

mydf <- read.table(text='no      name
    1      John
    2      Paul
    3        NA
    4    Sophie',header=TRUE,stringsAsFactors=FALSE)

再コード化:

mydf[is.na(mydf)] <- '.'

結果:

> mydf
  no   name
1  1   John
2  2   Paul
3  3      .
4  4 Sophie
于 2013-10-05T20:31:26.627 に答える
1

あなたの最後の質問に基づいて、ちょっと考えてみてください。factorを に変換しなかった場合はcharacter、次の新しいレベルに対応する必要があります"."

for (i in seq(ncol(dataset1))) {
      col <- dataset1[, i]
      if (is.factor(col))
        levels(col) <- c(levels(col), ".")
      col[is.na(col)] <- "."
      dataset1[, i] <- col
  }
于 2013-10-05T20:31:47.227 に答える