作者magic760812 (書書)
看板Statistics
標題[程式] R-script的問題
時間Wed Mar 16 00:36:44 2011
各位版友好
目前分析需要使用別人編寫好的r-script做分析
本人並沒有編寫script的經驗
因此現在遇到一些問題來板上求助
希望大家能夠幫忙:)
我遇到的問題應該是圖表的最大值及最小值叫不進來
以下是error code
錯誤在plot.window(...) : 'ylim' 值不能是無限的
此外: Warning messages:
1: In lfproc(x, y, weights = weights, cens = cens, base = base, geth = geth, :
procv: fit point outside xlim region
2: In min(x) : min 中沒有無漏失的引數; 回傳 Inf
3: In max(x) : max 中沒有無漏失的引數;回傳 -Inf
以下是程式碼
minmig2 <- 0
maxmig2 <- 0.5
# Plot line for sequence DNA mutation rate and save it in a .eps file
windows()
abc.reg.mut <- makepd4(target,abc.rej[,2],abc.rej[,17:55],tol=1,rej=F,transf="none")
plot(locfit(~abc.reg.mut$x,weight=abc.reg.mut$wt),main="prior (black) and
posterior (blue) distributions",xlab="mut rate",col="blue")
plot(locfit(~priors[,2]),col="black",add=T)
dev.copy2eps(file="mutrate_reg.eps", horizontal=F)
print("mut rate done.")
這一部分可以成功執行
# Plot line for migration rate of population 2 and save it in a .eps file
windows()
abc.reg.mig2 <- makepd4(target,abc.rej[,14],abc.rej[,17:55],tol=1,rej=F,
transf="none",
bb=c(minmig2,maxmig2))
plot(locfit(~abc.reg.mig2$x,weight=abc.reg.mig2$wt,
xlim=c(minmig2,maxm
ig2)),main="prior (black) and posterior (blue) distributions",xlab="mig2",col="blue")
plot(locfit(~priors[,14],xlim=c(minmig2,maxmig2)),col="black",add=T)
dev.copy2eps(file="mig2_reg.eps", horizontal=F) print("mig2 done.")
這部分不可以執行
我比較了兩段script
發現差別是下方多了段 bb=c(minmig2,maxmig2)) 及 xlim=c(minmig2,maxmig2)
把這兩段拿掉就可以畫圖
我在別的script 中有看到 xlim=c(minmig2,maxmig2) 最大最小值都可以成功匯入沒有
問題, 所以我猜想應該是 bb=c 這個有問題, 可是我上網查找後沒看過這個指令, 不知
到是不是作者寫錯? 如果有人知道這個訊息 , 麻煩可以給我一些建議, 感激不盡!
因為這個script是國外作者, 寫信請教回復不會很快, 因此就在此求助大家的幫忙,
謝謝大家!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.122.143.192
※ 編輯: magic760812 來自: 140.122.143.192 (03/16 00:37)
※ 編輯: magic760812 來自: 140.122.143.192 (03/16 00:38)
1F:推 Aqery:錯誤發生後用traceback(),可以看到是哪段出錯,檢查看看吧 03/16 06:38
2F:→ Aqery:bb只是變數名稱,c是定義一個vector,這段沒什麼特別的 03/16 06:39
3F:推 Aqery:然後看是哪一段出錯,是makepd4錯還是畫圖的時候錯 03/16 06:44
4F:→ Aqery:附帶一提,你的錯誤是在max(numeric(0))的情況下會出現 03/16 06:46
5F:→ Aqery:檢查一下你的minmig2,maxmig2是不是哪一段爆了... 03/16 06:46
6F:→ magic760812:很有用! 感謝! 03/16 15:43