如果我的标题不是描述我问题主题的最佳方式,我会提前道歉......
目前,我使用lapply
和Ag1
的组合预先分配两个列表Al1
和A
,根据向量设置其条目的上限和下限整数B
和整数A = c(7,5,3,4,2)
B = 4
Ag1 = sapply(lapply(B - A, function(a) a), function(b) max(1,b))
Al1 = sapply(lapply(B + A, function(a) a), function(b) min(1,b))
。这是:
sapply
我可以在不使用lapply
和{{1}}组合的情况下更有效地完成此操作吗?
答案 0 :(得分:1)
问题是你真的试图解决更复杂的问题吗?简单地组合函数可以简化您的示例。
A = c(7,5,3,4,2)
B = 4
Ag1 = sapply(B - A, function(a) max(1, a))
Al1 = sapply(B + A, function(a) min(1, a))
> Ag1
[1] 1 1 1 1 2
> Al1
[1] 1 1 1 1 1