从向量分配表中的值

时间:2019-01-21 12:13:33

标签: r assign

在R中,有一个表,其中包含一组昆虫物种和一个空列“栖息地特异性”。此外,向量还指定了那些被认为是栖息地专家的物种:物种B和C是栖息地专家,物种A,D和E是栖息地专家。

example.species <- data.frame (species = c("A","B","C","D","E"), habitat.specifity=NA)
example.species
  species habitat.specifity
1       A                NA
2       B                NA
3       C                NA
4       D                NA
5       E                NA
example.specialists <- c("B","C")

我只想用专家的“ s”和通才的“ g”填充第二列(“居住环境专一性”)。该表应如下所示:

  species  habitat.specifity
1       A                  g
2       B                  s
3       C                  s
4       D                  g
5       E                  g

我认为这必须是一个简单的任务,但是我不知道如何做到。任何帮助表示赞赏!

2 个答案:

答案 0 :(得分:1)

这是基于R的简单方法:

clear

答案 1 :(得分:1)

dplyr的示例:

library(dplyr)

# Your data
example.species <- data.frame(species = c("A","B","C","D","E"),habitat.specifity=NA)

# Simple if_else with dplyr and pipes
example.species %>%
  mutate(habitat.specifity = if_else(species %in% c("B","C"), "s", "g"))

# Result 
  species habitat.specifity
1       A                 g
2       B                 s
3       C                 s
4       D                 g
5       E                 g