我在R中有两个向量,例如从两个向量中删除相同的索引
a <- c(2,6,4,9,8)
b <- c(8,9,4,2,1)
向量a和b的排列方式是我希望保存的(我会将它们彼此对齐)。我想从矢量a中删除某些值,并删除b中相同索引处的值。例如如果我想删除值≥8从:
a <- a[a<8]
...这给那些没有值的新载体。
现在是否有一种简单的方法去除b中相同索引的值(在本例中是索引4和5)?也许通过使用数据框?
我在R中有两个向量,例如从两个向量中删除相同的索引
a <- c(2,6,4,9,8)
b <- c(8,9,4,2,1)
向量a和b的排列方式是我希望保存的(我会将它们彼此对齐)。我想从矢量a中删除某些值,并删除b中相同索引处的值。例如如果我想删除值≥8从:
a <- a[a<8]
...这给那些没有值的新载体。
现在是否有一种简单的方法去除b中相同索引的值(在本例中是索引4和5)?也许通过使用数据框?
事情是这样的:
keep <- a < 8
a <- a[keep]
b <- b[keep]
您还可以使用:
keep <- which(a < 8)
首先会从B从
b <- b[a<8]
a <- a[a<8]
删除索引然后< 8返回的载体中定义哪些指数小于8.
为什么不:
d <- data.frame(a=a, b=b)
d <- d[d$a < 8, ]
甚至:
d <- subset(d, a < 8)
如果向量是相同的数据的逻辑部分,使用的数据帧。这是更好的编程实践。
df <- data.frame(a = a, b = b)
df <- df[df$a < 8, ]
否则,设置另一个向量是索引移除:
keep <- a < 8
a <- a[keep]
b <- b[keep]
如果这纯粹是为了绘制,从而避免与b
并通过使用NA
x轴搞乱。
a[a>8]<-NA
plot(b,a) #works for point or line graphs