2013-02-03 94 views
1
p1 <- c(.25,.025,.025,.1,.2,.4) 

    T <- sample(1:6,size=N,replace=TRUE, prob=someprobabilityvector) 
    Y <- rbinom(N,1,p1[c(T)]) 

嗨,夥計們,我是新來的R和編程一般,需要一些幫助理解基本。有人能向我解釋一個向量Y上面發生了什麼。我計算出p1[c(T)]在上面做了什麼。但不知道Y在做什麼向量。所有的幫助提前感謝。困惑於理解一個rbinom輸出

+0

我回滾了你的編輯。如果你有另一個問題,也許你應該打開另一個線程。 –

回答

2

代碼的第一行創建六個概率的矢量:

p1 <- c(.25,.025,.025,.1,.2,.4) 

在第二行,你隨機選擇從數字一N值六(帶替換)。每個值的概率在someprobabilityvector中指定。因此,該函數將返回長N包括1和6之間

T <- sample(1:6,size=N,replace=TRUE, prob=someprobabilityvector) 

在第三行中的值的矢量,生成從與一個試驗和在p1[c(T)]指定概率問題二項分佈N隨機數。 c(T)T相同:該矢量包括從1到6的值。該矢量用於索引矢量p1。因此,p1[c(T)]將返回一個矢量,其中包括來自矢量p1N值。

Y <- rbinom(N,1,p1[c(T)]) 

由於指定二項式分佈具有一個試驗只,載體Y將包含零和一。

+0

@ user2007598作爲概念驗證,請嘗試'x < - table(Y); x/sum(x)'並注意「1」的頻率是大約。 0.25(按照'p1'的規定)和頻率。 0「其他」。在你的情況下,0不是初級抽樣的一部分,但包括抽樣二項分佈時。 –

+0

謝謝大家....! – user2007598

+0

@RomanLuštrik:如果我只想爲樣本方法2或3或4生成一個Y向量會怎麼樣.....你有什麼想法嗎? – user2007598