[英]How to fix an error message “Error in round(pwfst, 3) : non-numeric argument to mathematical function”
我在用
pwfst <-stamppFst(gl, nboots=1, percent=95, nclusters=1)
round(pwfst,3)
如果nboots = 1,
這將完美工作nboots = 1,
但是當我嘗試nboots = 3,
出現以下錯誤:
Error in round(pwfst, 3) : non-numeric argument to mathematical function
我想最終使用nboots = 100
我已經閱讀了幾篇
non-numeric argument to mathematical function
但是沒有一個與此問題有關。 建議一位帖子確保我只加載了必要的軟件包。 我做到了,沒有任何改變。
請問有人嗎? 謝謝。
編輯: pwfst
不是列表。 它具有這種形式-還有5列
Bees Nest Ridge_12 Bees Nest Ridge_15 Broken Back Trail Cousins Creek
Bees Nest Ridge_12 NA NA NA NA
Bees Nest Ridge_15 0.092 NA NA NA
Broken Back Trail 0.124 0.067 NA NA
Cousins Creek 0.396 0.352 0.376 NA
Sawpit Rd 0.104 0.046 0.077 0.349
Wallaby Rocks 0.450 0.384 0.421 0.540
Bees Nest Ridge_13 0.161 0.098 0.132 0.403
Wingen Maid 0.433 0.376 0.409 0.537
Bees Nest Ridge_14 0.086 0.025 0.056 0.354
第二編輯:
str(pwfst)
回報
num [1:9, 1:9] NA 0.0922 0.1243 0.3964 0.1038 ...
- attr(*, "dimnames")=List of 2
..$ : chr [1:9] "Bees Nest Ridge_12" "Bees Nest Ridge_15" "Broken Back Trail" "Cousins Creek" ...
..$ : chr [1:9] "Bees Nest Ridge_12" "Bees Nest Ridge_15" "Broken Back Trail" "Cousins Creek" ...
希望這些信息足以使某人能夠幫助我。 謝謝,露絲P
stamppFst()
函數的文檔顯示為:“如果nboots <2,則不執行引導程序,因此僅返回Fst值矩陣。” 因此,當pwfst
是使用1引導進行分析的結果時,您需要為round
函數提供一個矩陣, round
函數可以處理該矩陣。 在其他情況下(當nboots> = 2時),您將向round
函數提供一個列表,該列表無法通過這種方式進行處理。
如果pwfst
是一個列表,則可以運行lapply(pwfst, round)
以便它在列表中的每個矩陣上運行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.