1
我創建了一個函數,我想要計算(幾個)數據向量。
實際上,對於一個變量,其他參數應該在一個範圍內(1:100),而其他參數則依次保持不變。將函數中使用的值限制爲它們的總和
功能是:EI <- function(x,y,z) {(x+y)/(2*(2*x+y)+z)}
我的問題是,X + Y + Z的總和必須被限制爲100。而且我不知道如何告訴它的功能。例如,如果x = 20
,y
只能取自0:80
的值,即(100-20),並且z可以取自0:100-(x + y)的取值。
我使用下面的代碼,其中z不被視爲全部。我想,我會得到至少一個大的載體,但我得到的是單號:
for(x in 1:100) {
for(y in 0:(100-x)) {
for(z in 0:(100-(x+y))) {
v1 <- c(EI(x,y,z))
}
}
}
我需要告訴函數EI()是x + y + z之有alwys是100. 有沒有人知道如何解決這個問題?
會拋出一個錯誤? 'if(x + y + z!= 100)stop(「sum xyz must be 100」)'? – zx8754