-2
我明白爲什麼rep
功能沒有通過反覆試驗解決,並且爲了使random.sum(5)
工作,rep(100, 10)
必須是rep(100, 5)
。但我不明白爲什麼:R功能中的代表功能
# clear the workspace
rm(list=ls())
random.sum <- function(n) {
x[1:n] <- ceiling(10*runif(n))
cat("x:", x[1:n] ,"\n")
return(sum(x))
}
set.seed(3585)
x <- rep(100,10)
show(random.sum(10))
x: 9 4 10 1 9 8 4 1 3 2
## [1] 51
show(random.sum(5))
x: 9 6 6 2 2
## [1] 525
你究竟想要完成什麼?實際上,避免副作用是明智的(即試圖在'random.sum'函數之外修改'x')。您不需要在全局環境中聲明'x'以在'random.sum'中使用它。 – hrbrmstr 2014-10-05 01:26:29
這是我在作業中給出的一個問題,以查明該函數有什麼問題。我可以看到函數中出了什麼問題,但無法確定哪裏出了問題,所以我嘗試了一個錯誤,發現它是造成它的代表(100,10)。 – 2014-10-05 01:56:32