我们说我有两个向量
x <- c(1, 2, 3, NA, 5, 6, NA, NA, 10, 11, 12, NA, NA, 13)
y <- c(14, 15, 16, 17, 18 ,19, 20, 21, 22, 23, 24, 25, 26 ,27)
它们的长度均为14.我想从x中删除NAs,并在y中删除与其对应的值。并获得相等长度的x和y。
for (i in 1:length(x)) {
for (j in 1:length(y)) {
if(is.na(x[, i]==y[, j))
x <- x[-which(x %n% y)]
}
}
但它并没有给出我想要的东西。你能帮我吗?
答案 0 :(得分:2)
我看了上面的评论,你想在没有NA的情况下绘制x和y吗? 如果是这样,你可以只绘制它,R不会给出任何警告或错误指示。
methodFromSameClassIWantToVerify();?
如果您需要从x中删除NA并删除y中的相应值,则可以将x <- c(1, 2, 3, NA, 5, 6, NA, NA, 10, 11, 12, NA, NA, 13)
y <- c(14, 15, 16, 17, 18 ,19, 20, 21, 22, 23, 24, 25, 26 ,27)
plot(x,y)
和x
合并到y
中,然后使用na.omit()来处理{ {1}},最后,你可以绘制它。这些代码如下:
data.frame
OR :你可以使用索引来解决它。 is.na是一个帮助您检测哪个是NA的函数。 在向量x us中查找NA位置is.na(),
然后删除y中的相应值
最后,更改x中的值。代码如下:
new dataframe
注意:订单无法更改。
答案 1 :(得分:1)
x <- x[!is.na(x)]
y <- y[!is.na(x)]