通过将因子强制转换为数据帧中的逻辑类型来创建布尔列?



我的数据帧如下所示:

location       eco    
Germany        eco    
Netherlands    eco    
USA            not-eco 
Dubai          not-eco 

我想在数据框中创建一个新列,如果位置为"生态"则显示 TRUE,如果位置为"非生态"则显示 FALSE。结果应如下所示:

location       eco        logical
Germany        eco        TRUE
Netherlands    eco        TRUE
USA            not-eco    FALSE
Dubai          not-eco    FALSE

如何使用 R 执行此操作?

我们可以比较列eco中的"eco"值并创建一个逻辑列。

df$logical <- df$eco == "eco"
df
#     location     eco logical
#1     Germany     eco    TRUE
#2 Netherlands     eco    TRUE
#3         USA not-eco   FALSE
#4       Dubai not-eco   FALSE

数据

df <- structure(list(location = structure(c(2L, 3L, 4L, 1L), .Label = c("Dubai",  
"Germany", "Netherlands", "USA"), class = "factor"), eco = structure(c(1L, 
1L, 2L, 2L), .Label = c("eco", "not-eco"), class = "factor")), 
class = "data.frame", row.names = c(NA, -4L))

最新更新