我正在尝试创建一个R函数,它可以将值列表中的任何负值转换为正值:
x <- c(5,-8,11)
abs_function <- function(A){
n <- nrow(A)
for (i in n) {
if (A[i,]<0) {-A}
else if (A[i,]>0) {A}
}
return(A)
}
但当我尝试:
abs_tfn(x)
它返回:
[1] 5 -8 11
因此值-8不会转换为8。
我是不是漏掉了什么基本的东西?
提前感谢您的帮助。
1条答案
按热度按时间8ulbf1ek1#
对于 vector,有一个默认函数:
abs()
,所以你可以做abs(x)
。对于一个列表
x <- list(5, -8, 11)
,类似于下面的代码: