作者spiritsky (精靈)
看板Statistics
標題[程式] R中gamma的survival function
時間Sun Oct 3 13:07:08 2010
------------------------------------------------------------------------
[軟體程式類別]:
R
[程式問題]:
在R中跑gamma function的survival function
[軟體熟悉度]:
低(1~3個月)
[問題敘述]:
想要把gamma在survival function 圖畫出來
可是因為它的survival function 是1-cdf
然後gamma的cdf沒辦法直接積分出來,所以無法只帶數字進去算
是要做成三組數字帶進去看,曲線是怎麼跑?
可是一直都沒辦法將它們會合在一起
[程式範例]:
myq=seq(0.005,0.995,by=0.005)
q1=qgamma(myq,3,1)
dp1=pgamma(q1,3,1)
S1=1-dp1
q2=qgamma(myq,5,1)
dp2=pgamma(q2,5,1)
S2=1-dp2
Sa=cbind(S1,S2)
plot(S1~q1,type="l",main="Gamma cdf Plot ", ylab="cdf", xlab="x")
windows()
plot(S2~q2,type="l",main="Gamma cdf Plot ", ylab="cdf", xlab="x")
-----------------------------------------------------------------------------
這個是目前同學在幫我修改過的程式碼,會跑出兩張圖
可是沒辦法像課本一樣
雖然只是存活分析最前半段,可是已經寫了一天還有別人的幫忙
但還是畫不出來
希望有這方面的高手可以指點一下
因為還有後面的hazard rate=f(x)/s(x)
可是我已經卡在這邊好久了
拜託大家了!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.41.162.205
※ 編輯: spiritsky 來自: 114.41.162.205 (10/03 13:07)
1F:→ arbiteron:pgamma就是CDF 如果三條曲線畫在同一張圖上的話 10/03 19:45
2F:→ arbiteron:後面的就要用 lines或points的指令 10/03 19:46
3F:推 wasken:妳可以用 par(new=T) 也可以 10/03 20:10
4F:→ lin15:add=TRUE 10/03 20:32
5F:→ arbiteron:add=TRUE 似乎只適用在curve(...) 10/04 01:23
6F:→ lin15:plot也可以 10/04 07:47
7F:→ arbiteron:thx 10/04 21:39
8F:→ lin15:後來用好像不行...印象中有在plot下用過才對=.=||| 10/04 21:52