微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从循环中的数据帧列表中提取条件行 数据

如何解决从循环中的数据帧列表中提取条件行 数据

在我下面的 , 调用中有 4 行变量 split(w7,w7$study.name)[48]

但我想知道为什么 control == FALSE 只返回这样的行之一?

ps.我怀疑,我应该在 ctlistG(split(w7,w7$study.name)[48]) 中使用 lapply() 而不是 mapply()

可重现的 R 代码

ctlistG()

解决方法

如果我们需要 4 行,根据函数,我们可能需要 Map 而不是 lapply

out <- do.call(rbind,lapply(input,function(inp) 
      do.call(rbind,Map(function(p,o)
   do.call(rbind,lapply(m,function(m1)
    m1[m1$control == FALSE & m1$post == p & m1$outcome ==o,drop = FALSE])),inp$pos,inp$outcom))))

数据

lst1 <- split(w7,w7$study.name)
m <- lst1[48]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。