在R

时间:2016-03-15 13:01:15

标签: r na

我有一个矩阵,其中包含几个NA值,我希望它们用空字符串替换。

m <- matrix(letters, ncol=8, nrow=3)
m[c(3, 8, 14, 17, 22)] <- NA

有没有办法用NA替换""值,而无需修改变量m?例如,我想在不更改m的情况下执行以下操作。

m[is.na(m)] <- ""
some_function(m)

这样可以有效地做到这一点,但在基础R

na_to_empty_string(m)  # returns new matrix without changing m

注意,我正在尝试使用空字符串而不是NA创建一个临时矩阵,而不是打印它(我们可以使用print(m, na.string="")na.omit()之类的函数似乎省略了整个行,而不仅仅是细胞。

1 个答案:

答案 0 :(得分:2)

我们可以使用replace来更改原始对象'm'。

replace(m, is.na(m), '')