【发布时间】:2020-08-29 07:44:15
【问题描述】:
我正在寻找一些干净的方法来实现此操作。说,我有一个列表如下:
gate_entry <- list(gate1 = "Andy",
gate2 = "Bob",
gate3 = "Chad",
gate4 = NA,
gate5 = " Dan",
gate6 = NA,
gate7 = NULL)
NA 和 NULL 可能出现并且超出了我的代码的控制范围。
在我的代码的其他地方,我注册了一个与gate_entry 长度相同的列表,如下所示:
amount_carry <- list(10, 20, 15, NULL, NA, NA, NA)
对于gate_entry 中的每个非空字符串元素,我想检查amount_carry 中的对应元素是否为数字。如果至少有一次该条件不成立,则返回 FALSE。就像gate_entry 中的元素一样,amount_carry 中的元素可以是NA 或NULL。
在这种情况下,我希望 amount_carry 中的元素 1、2、3 和 5 是数字(并返回 TRUE)。但是由于元素 5 是NA,所以这个操作应该返回FALSE。
【问题讨论】:
-
你可以在这里使用
mapply来检查元素。 -
@MrFlick 这两个列表都是通过附加到其他地方生成的。因此,附加的一个元素可能为 NULL。
-
@DarrenTsai 如果我将
amount_carry转换为列表而不是向量会怎样?
标签: r