我需要测试一个公式是否是片面的(例如~ a
,而不是a~b
)。
现在我正在做这样的事情:
test <- list( ~ a + b, a ~ b + c, b + c ~ a )
isOneSided <- function(form) length(form)==2 && sum(grepl("~",form))==1
> sapply(test,isOneSided)
[1] TRUE FALSE FALSE
有没有更好的办法?我担心有些我不知道的公式类型可能会逃避这个测试。