当前位置:  开发笔记 > 编程语言 > 正文

在dplyr中有条件地改变数据

如何解决《在dplyr中有条件地改变数据》经验,为你挑选了1个好方法。



1> Benjamin..:

我看到你使用的两个错误ifelse.在你所拥有的地方ifelse(depth == 10),你只给出了ifelse一个需要三个参数的论据.删除右括号,你有一个良好的开端.

您的第二个错误是,如果第二个ifelse条件解决,您没有说明该怎么做FALSE.在下面的代码中,我已经分配NA了这种情况.我不确定这是否是你想要的行为,所以你应该把它改成适合你需要的行为.

df%>% 
  group_by(day, year, depth) %>% 
  bind_rows(., .) %>%
  mutate(mass = ifelse(test = (depth == 10), 
                       yes = mass/2,
                       no = ifelse(test = (depth == 20), 
                                   yes = mass/3,
                                   no = NA))) %>%
  arrange(day, year, depth, mass)

推荐阅读
ERIK又
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有