这似乎应该是直截了当的。我需要在带有空格的数据框中用第1列和第2列替换第2行和第3行。它们目前是NA,导致我尝试使用的包有问题。
有什么建议吗?
a <- c(1, NA, NA, 2, 3)
b <- c(5, NA, NA, 2, 6)
c <- c(4, 6, 7.6, 2, 1)
abc <- cbind(a,b,c)
abc
a b c
[1,] 1 5 4.0
[2,] NA NA 6.0
[3,] NA NA 7.6
[4,] 2 2 2.0
[5,] 3 6 1.0
edit1:数据集中还有其他NA,数据集相当大。在这种情况下,替换所有NA是不合适的。我也无法将列更改为字符串。
edit2:解决了问题!我正在创建NA的任何空df并对其进行rbinding以创建前两列。在使用rbind之前,我使用了iShouldUseAName来替换NA。谢谢!
答案 0 :(得分:3)
如果您只关心打印方面,可以
> print(abc, na.print = "")
a b c
[1,] 1 5 4.0
[2,] 6.0
[3,] 7.6
[4,] 2 2 2.0
[5,] 3 6 1.0
答案 1 :(得分:1)
这通常是最简单的。按矩阵索引:
abc[is.na(abc)] <- ""
应该注意,这会导致您将列转换为字符向量。
也许让我们知道包裹错误是什么,我们可以建议更合适的答案。