给定一个整数数组,我可以找到具有最大乘积的一对相邻元素并使用 apply 返回该乘积吗?
可以使用apply函数完成吗?
预期输入:
x <- c(3, 6, -2, -5, 7, 3)
Run Code Online (Sandbox Code Playgroud)
预期输出:
adjacent_elements_product(x) = 21
Run Code Online (Sandbox Code Playgroud)
可能相关的类似帖子: 给定一个整数数组,找到具有最大乘积的相邻元素对并返回该乘积
你可以使用滚动 apply
max(zoo::rollapply(x, 2, prod))
#[1] 21
Run Code Online (Sandbox Code Playgroud)
一个基本的 R 选项是:
max(head(x, -1) * tail(x, -1))
Run Code Online (Sandbox Code Playgroud)