如何在R中的map函数中使用ifelse

ifelsemap函数内部遇到这句话的问题:

df<-list(mtcars,mtcars)

我想要做的就是以这种方式组织此列表的每个数据框:slice(x,c(n(),2:(n()-1),1))

map(df, ~   slice(.x,c(n(),2:(n()-1),1)))   # it works well. 

但是当我设置条件时,我无法在 ifelse 中执行此操作x$cyl == 4

map(df, ~   ifelse(sum(.x$cyl == 4) > 0, slice(.x,c(n(),2:(n()-1),1)), .x)) # The output is weird

我尝试使用 lapply 做同样的事情,但它不起作用:

lapply(df, function(x) ifelse(sum(x$cyl == 4) > 0, slice(x,c(n(),2:(n()-1),1)),x))

有什么帮助吗?

以上是如何在R中的map函数中使用ifelse的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>