我正在处理R中的一个数据集,但缺少一些值。我正试图弄清楚如何创建遵循以下逻辑"z"的新变量(z(;如果Y有一个缺失值,那么Z的输出为0,如果Y没有缺失值,则输出为1。注意,请参阅下面的示例。
(原始输出
x----y
1 abc
2 svc
3 (blank)
4 ads
5 (blank)
6 adf
(期望输出(
x----y---------z
1 abc 1
2 svc 1
3 (blank) 0
4 ads 1
5 (blank) 0
6 adf 1
确保y
中丢失的值在数据帧中编码为NA
,然后可以使用ifelse
函数将新列z
分配给数据帧df
。
df$z <- ifelse(is.na(df$y), 0, 1)
尝试下面的代码
df$z <- +nzchar(df$y)
根据空白值是NA
还是字符串,您需要使用
df$z <- ifelse(is.na(df$y), 0, 1)
如果字符串包含单词"空白">
df$z <- ifelse(df$y=='blank', 0, 1)