在条件下编辑列

时间:2016-09-08 12:12:21

标签: r conditional-statements

我有一张桌子:

id

当dist高于某个值时,我想编辑列+1(假设为10)。我希望在data$dist >10

时添加 data$id_new <- c(1,1,2,2,2,3,3,4,4,5,5,6,7,7)

最终输出将是:

if

是否可以使用 $( document ).ready(function() { //console.log( window.location.href ); if(window.location.href.indexOf("#1234") > -1) { alert("your url contains #1234"); popModal(); } }); 循环执行某些操作?我尝试了一个循环,但我仍然没有成功。

2 个答案:

答案 0 :(得分:6)

也许使用cumsum:

data$new_id <- data$id + cumsum(data$dist > 10)

<强>解释

cumsum(data$dist > 10)将返回data$dist中大于10的索引的累积总和。您可以通过在R中将表达式分开并查看每个部分的工作原理来了解其工作原理。

答案 1 :(得分:4)

我们可以将>with(data, cumsum(dist > 10| !duplicated(id))) #[1] 1 1 2 2 2 3 3 4 4 5 5 6 7 7

一起使用
Java