2
我試着搜索這些答案中的一個很多,並且找不到我在找什麼。我相信這是相當基本的,我要麼不知道如何對搜索我所尋找的詞彙進行搜索,而是以錯誤的方式進行搜索。返回數組內的隨機變量,取決於邏輯變量或scipy中的重採樣變量
使用SciPy的,我想無論是:
通過隨機分佈定義一個變量,並把它每次被調用時返回一個新的值,例如:
x = np.random.normal(30,30/10)
x = #random number
x = #new random number
最終目標是得到這一點代碼(以及更多的類似代碼),以返回隨機變量,以得到g1和g2的數字,這些數字由數組gamma中的每個位置的分佈定義。我很樂意在g1rand和g2rand中查找隨機值,如果這樣做可行的話,但我還沒有弄清楚如何用一個循環來填充gamma數組。最終的目標是運行代碼的MC模擬。提前致謝。
disc = 11j #number of intervals
depth = 50
q = 300 #number of random sampls
n = depth
interval_thickness =abs(n/(abs(disc)-1))
depth_array = np.r_[0:n:(disc)]
ld1 = 10.0
ld2 = 70.0
g1 = 120
g1rand = np.random.normal(g1,g1/10,q)
g2 = 60
g2rand = np.random.normal(g2,g2/10,q)
condlist = [depth_array <= 0,depth_array<=ld1, depth_array<=ld2]
choicelist = [0, g1, g2]
gamma = np.select(condlist, choicelist)
interval_weight=interval_thickness*gamma
Gahhh。謝謝!我認爲這樣做。我知道必須有這樣的事情,我找不到它。 – user2060108 2013-02-12 23:42:39
想到我編輯了我的評論。我最終要做的就是讓上面的gamma數組返回變量,就好像每次g1都是作爲新的g1rand.rvs()運行的結果一樣。相同的g2 - > g2rand.rvs。 這是更好地通過循環完成? – user2060108 2013-02-13 00:31:12