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

将非单调转换为R中的单调数据

如何解决《将非单调转换为R中的单调数据》经验,为你挑选了1个好方法。



1> Roland..:

您可以使用is.na <-cumsum传播NA值:

df <- within(df, Y <- ave(Y, id, FUN = function(x) {
  is.na(x) <- is.na(cumsum(x))
  x
}))

df[order(df$id),]
#    id  Y X t
# 1   1  1 5 1
# 5   1 NA 3 2
# 9   1 NA 8 3
# 13  1 NA 3 4
# 2   2  1 6 1
# 6   2  1 5 2
# 10  2  1 9 3
# 14  2  0 4 4
# 3   3  0 7 1
# 7   3 NA 6 2
# 11  3 NA 1 3
# 15  3 NA 5 4
# 4   4  1 8 1
# 8   4  1 7 2
# 12  4 NA 2 3
# 16  4 NA 6 4

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