首页 > 解决方案 > 在 R 中添加一个包含存在/不存在信息的新列

问题描述

你好,我有一个数据框,例如:

Col1 Col2
A 23
B NA
C 21
D 2
E NA
F 9

我想添加一个带有存在/不存在信息的新 Col3 (1/0) 如果 col2 中的数字 >=1 我放 1 如果 NA 我放 0

并得到:

Col1 Col2 Col3
A 23 1
B NA 0
C 21 1
D 2 1
E NA 0
F 9 1

标签: r

解决方案


如果大于等于 1 而不是 ,则可以指定Col3为 1 。col2NA

df$Col3 <- +(df$Col2 >= 1 & !is.na(df$Col2)) 
df

#  Col1 Col2 Col3
#1    A   23    1
#2    B   NA    0
#3    C   21    1
#4    D    2    1
#5    E   NA    0
#6    F    9    1

+一开始将逻辑值TRUE/转换FALSE为整数值1/ 0

数据

df <- structure(list(Col1 = structure(1:6, .Label = c("A", "B", "C", 
"D", "E", "F"), class = "factor"), Col2 = c(23L, NA, 21L, 2L, 
NA, 9L)), class = "data.frame", row.names = c(NA, -6L))

推荐阅读