gpt4 book ai didi

R - 使用函数过滤向量

转载 作者:行者123 更新时间:2023-12-01 19:28:16 24 4
gpt4 key购买 nike

我有一个与此类似的功能:

isGoodNumber <- function(X) 
{
if (X==5) return(TRUE) else return(FALSE)
}

I have a vector:
v<-c(1,2,3,4,5,5,5,5)

我想获得一个包含 v 元素的新向量,其中 isGoodNumber(v) == TRUE

我该怎么做?

尝试了 v [ isGoodNumber(v) == TRUE ] 但不起作用:-)

谢谢!!

最佳答案

有一个名为“Filter ”的函数可以完全满足您的要求:

Filter( isGoodNumber, v)
#[1] 5 5 5 5

可以选择创建一个向量化的函数,可以通过使用 Vectorize 函数(已说明)或使用 ifelse 编写(也可以提到),并且可以选择类似“过滤器”的功能

 isGoodNumber3 <- function(X) 
{ X[ ifelse(X==5, TRUE,FALSE)]
}

isGoodNumber3(v)
#[1] 5 5 5 5

关于R - 使用函数过滤向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9265553/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com