如果另一列显示特定值,如何使用R创建一个新列,R表示TRUE/FALSE?

如果另一列显示特定值,如何使用R创建一个新列,R表示TRUE/FALSE?,r,mutate,R,Mutate,以下是一个简单的数据集: mydf您可以在dplyr管道上使用ifelse inside mutate: library(dplyr) #Data mydf <- tibble(country = rep(c("UK", "US"), each = 3), date = rep(c("Day1", "Day2", "Day3"), times = 2),

以下是一个简单的数据集:

mydf您可以在dplyr管道上使用ifelse inside mutate:

library(dplyr)
#Data
mydf <- tibble(country = rep(c("UK", "US"), each = 3),
               date = rep(c("Day1", "Day2", "Day3"), times = 2),
               cases = seq(1:6))
#Code
mydf <- mydf %>% mutate(part_us=ifelse(country=='US',T,F))
输出:

# A tibble: 6 x 4
  country date  cases part_us
  <chr>   <chr> <int> <lgl>  
1 UK      Day1      1 FALSE  
2 UK      Day2      2 FALSE  
3 UK      Day3      3 FALSE  
4 US      Day1      4 TRUE   
5 US      Day2      5 TRUE   
6 US      Day3      6 TRUE 
下一步可以是另一种方式:感谢@Qwethm:

相同的输出。

您可以在dplyr管道上使用ifelse inside mutate:

library(dplyr)
#Data
mydf <- tibble(country = rep(c("UK", "US"), each = 3),
               date = rep(c("Day1", "Day2", "Day3"), times = 2),
               cases = seq(1:6))
#Code
mydf <- mydf %>% mutate(part_us=ifelse(country=='US',T,F))
输出:

# A tibble: 6 x 4
  country date  cases part_us
  <chr>   <chr> <int> <lgl>  
1 UK      Day1      1 FALSE  
2 UK      Day2      2 FALSE  
3 UK      Day3      3 FALSE  
4 US      Day1      4 TRUE   
5 US      Day2      5 TRUE   
6 US      Day3      6 TRUE 
下一步可以是另一种方式:感谢@Qwethm:


输出相同。

正是我想要的-谢谢:@Karima太棒了!继续学习:您也可以在不使用ifelse:mydf%>%mutatepart\u us=country的情况下编写它==US@Qwethm这是一个很好的建议,让我给你加上学分!正是我想要的-谢谢:@Karima太好了!继续学习:您也可以在不使用ifelse:mydf%>%mutatepart\u us=country的情况下编写它==US@Qwethm这是一个很好的建议,让我给你加上学分!