0
我在想,如果我可以使用lapply()
或创建一个for()
循环有我的函数如下称为decimal(see below)
多次(对于我有对象的个数)第一list()
,然后控制数字的数量?lapply或for循环中的R上市对象
换句话说,我怎么能避免写作:list(AA = decimal(AA, 7), BB = decimal(BB, 7))
使用lapply
或创建for
循环,如:lapply(AA:BB, function(x) decimal(x, 7))
这里是我的一个R函数:
decimal <- function(x, k){
if(typeof(x) == "character"){
return(x)
}
format(round(x, k), nsmall = k, scientific =
ifelse(x >= 1e+05 || x <= -1e+05 || x <= 1e-05 & x >= -1e-05, T, F))
}
AA <- .234
BB <- .34789640
list(AA = decimal(AA, 7), BB = decimal(BB, 7))
lapply(AA:BB, function(x) decimal(x, 7)) ## This doesn't work correctly
迈克,谢谢你,只是我的信息,代码明智的,就不会创建一个循环是更有效地做到这一点。 ? – rnorouzian
@parvinkarimi不一定,我创建了一些代码,显示for循环稍慢。对于循环来说,一般情况下并不坏,只要不做循环的每次迭代就可以增长对象。但即使没有这样做,速度也会变慢(请参阅我的编辑)。 –