我想用兩個條件在rnorm
上生成50個數字。 如果有號碼<99
或>101
(即,在99-101
之外),請忽略它們並再次運行rnorm
,直到生成符合標準的50個總數。條件符合後終止while循環(R)
- 這與統計數據無關。我只是試圖學習如何使用while循環。
我懷疑
rnorm(50,
部分行3。,是計算效率低下 - 任何意見將是偉大的。該主問題我有,雖然這個代碼的作品,它永遠持續下去。當有50個符合標準的觀測值時,它需要終止。 到目前爲止,我曾嘗試不成功使用
if
和break
做到這一點...
到目前爲止的代碼:
1. z = rnorm(50, mean = 100, sd = 10)
2. while(match(TRUE, z > 99) > 0 | match(TRUE, z < 101) > 0) {
3. z = c(z[z >= 99 & z <= 101], rnorm(50, mean = 100, sd = 10))
4. }
你可以考慮一個隨機數生成有上限和下限。見這裏http://stackoverflow.com/questions/19343133/setting-upper-and-lower-limits-in-rnorm – SabDeM
非常方便。謝謝。 – lnNoam