【发布时间】:2014-12-14 06:10:51
【问题描述】:
我有一个包含整数或空元素的列表,例如z <- list(10, 7, integer(0), 5, 4).
我想把它转换成一个相同长度的整数向量。取消列出将删除空元素,而我打算将它们填充为 0。
目前我所做的是 sapply(z, function(x) {ifelse(length(x)==0, 0, x)}) 。我很好奇是否有现有的 R 函数或其他方法可以更优雅地执行此操作?
【问题讨论】:
-
将
ifelse与length-1 参数一起使用有点难看。这是if(){}else{}有意义且更高效的一个实例。此外,它们都不需要==0,因为它们都会将参数强制为逻辑参数,因此0==FALSE。 -
我同意,这样会更整洁。
标签: r