我有一个基于某些条件显示错误的数据框(请参见下文)。如果所有单元格中都出现“false”,我想显示一条消息(例如,失败)
a b c
1 FALSE FALSE FALSE
2 FALSE FALSE FALSE
3 FALSE FALSE FALSE
我尝试了下面的代码,但它不起作用
if (dataframe_name=="false")
print(fail)
我有一个基于某些条件显示错误的数据框(请参见下文)。如果所有单元格中都出现“false”,我想显示一条消息(例如,失败)
a b c
1 FALSE FALSE FALSE
2 FALSE FALSE FALSE
3 FALSE FALSE FALSE
我尝试了下面的代码,但它不起作用
if (dataframe_name=="false")
print(fail)
这是一个可供考虑的替代方案。我将它包含在 (1) 向您展示 " message
" 函数,(2) 向您展示如何创建一个最小的可重现示例,(3) 如何编写一个简单的函数,以及 (4) 为您的问题提供一个有效的答案因为现有的答案是不正确的。
df1 <- data.frame(a = c(FALSE, FALSE), b = c(FALSE, FALSE))
df2 <- data.frame(a = c(FALSE, TRUE), b = c(FALSE, FALSE))
checkMe <- function(inDF) {
if(!any(inDF == TRUE)) message("false")
else message(paste0((sum(inDF == TRUE)/prod(dim(inDF)))*100, "% true values"))
inDF
}
checkMe(df1)
# false
# a b
# 1 FALSE FALSE
# 2 FALSE FALSE
checkMe(df2)
# 25% true values
# a b
# 1 FALSE FALSE
# 2 TRUE FALSE
我想你想要的是:
if(dataframe_name == FALSE)
print("fail")
"FALSE"
是一个字符串。FALSE
是一个布尔值。