【发布时间】:2018-12-18 16:18:23
【问题描述】:
我正试图围绕 R 转转,我确信我在做一些愚蠢的事情。
我有一个数据框,其中包含 30 个品牌(我将它们的名称分别放在一个名为“品牌”的列表中)和一个我希望插入数据框的新名称列表(称为“知名品牌”)。
我正在尝试在 R 数据框中的新列中填充 if 语句的结果(使用“知名品牌”中的名称),但这会继续生成错误消息(“{”中的意外“{”)
我不确定哪里出错了 - 这是我的代码:
for(i in 1:length(brands)){
plot1a_df <- plot1a_df %>% mutate(known_brands[i] = ifelse(brands[i] >1, 1, 0))
}
用数据来说明(假设 3 x2 列):
plot1a_df = data.frame(brands = c(1,0,2), Misc = c(0,0,0))
这个想法是用 c(0,0,1) 结束第三列(“known_brands”)
【问题讨论】:
-
请添加一个可重现的数据示例。
dput()通常就足够了。 -
您在
}之前缺少一个)括号 -
RLave、Jozef、Imran:感谢您迄今为止的帮助。我已经编辑了我的代码以考虑您的 cmets。可悲的是,到目前为止所说的都不起作用。我面临的挑战是让一个 for 循环在 dplyr 中运行(在这种情况下是变异)