NAs R的If-else If语句出错

NAs R的If-else If语句出错,r,R,我想在R中创建一个公式,该公式ifthis或else ifthis粘贴前两列中的适当值。例如: Fruit Colour Colour_group banana yellow yellow banana yellow pear green green pear green pineapple yellow yellow pineapple yellow apple gre

我想在R中创建一个公式,该公式ifthis或else ifthis粘贴前两列中的适当值。例如:

 Fruit       Colour    Colour_group
 banana      yellow    yellow  
 banana      yellow
 pear        green     green
 pear        green
 pineapple   yellow    yellow
 pineapple   yellow
 apple       green     green
 apple       green                


green<-1
yellow<-1
for (i in 1:nrow(fruits){
   if (fruits$Colour_group[i] == "yellow"){
          yellow[i] <- paste(fruits$Fruit[i],fruits$Colour[i])
   } else if (fruits$Colour_group[i] == "green"){
          green[i] <- paste(fruits$Fruit[i],fruits$Colour[i])
   } else {
     next
   }}
水果颜色组
香蕉黄
香蕉黄
梨绿
梨绿
菠萝黄
菠萝黄
苹果绿
苹果绿

绿色你为什么不按颜色分组并从那里粘贴呢

yellow <- fruits[fruits$Colour_group == 'yellow',]
green <- fruits[fruits$Colour_group == 'green',]
yellow_fruits <- paste(yellow$Fruit,yellow$Colour)
green_fruits <- paste(green$Fruit,green$Colour)

yellow你能给出一个可重复的例子吗?(使用
dput
)以及我想要得到的预期结果是字符向量:“香蕉黄”“菠萝黄”,没有其他值。我希望我解释得对1.你需要什么还不清楚。根据您提供的数据给出预期结果我想根据颜色组获得两个字符向量。前两列(水果和颜色)中有重复和唯一的值,但我只需要第一个实例。例如,黄色仅包含“香蕉黄”“菠萝黄”,绿色字符仅包含“梨绿”“苹果绿”。我不希望有来自颜色组列的NAs。我应该解释得更清楚些。谢谢你的帮助。谢谢,但是我得到了一个字符向量,它的值在第一和第五位置,其余的都是NAs。