如何创建二进制值以捕获R中的空值?

如何创建二进制值以捕获R中的空值?,r,if-statement,null,R,If Statement,Null,以下是我当前数据集的简化版本: v1 v2 v3 null b c a b c a null c 我想创建一个名为“v4”的新列,该列只有在v1为null时才为1,如果v1不为null,则为0 所需的输出如下所示 v1 v2 v3 v4 null b c 1 a b c 0 a null c 0 非常感谢您的帮助。有关您的示例数据: df$v4=sapply(df$v1,f

以下是我当前数据集的简化版本:

v1    v2     v3
null  b      c
a     b      c
a     null   c 
我想创建一个名为“v4”的新列,该列只有在v1为null时才为1,如果v1不为null,则为0

所需的输出如下所示

v1    v2     v3 v4
null  b      c  1
a     b      c  0
a     null   c  0
非常感谢您的帮助。

有关您的示例数据:

df$v4=sapply(df$v1,function(f){as.numeric(f=="null")})
通常,在读取
r
中的数据时,您可以在
NA.strings
函数的
read.csv
fread
参数中指定表示空值的字符串(“null”、“NA”、“null”和“”),然后在r data.frame中将其转换为
NA
。在这种情况下,您可以将上述代码修改为:

df$v4=sapply(df$v1,function(f){as.numeric(is.na(f))})

张贴时请遵循标签顶部的说明。已完成。非常感谢。