[英]R error: Error in `row.names<-.data.frame`(`*tmp*`, value = value)
[英]R Error in `row.names<-.data.frame`(`*tmp*`, value = value) while using tell of the sensitivity package
我正在使用“敏感性”軟件包進行敏感性研究。 嘗試使用外部模型的輸出數據來計算靈敏度指標時,我得到了十分之一中指定的誤差。
輸出是存儲在csv文件中的三列表,我讀入如下:
day1 <- read.csv("day_1_outputs.csv",header=FALSE)
現在,當我嘗試使用第一列的輸出計算靈敏度指數時:
tell(sob.pars,day1[,1])
我得到:
Error in `row.names<-.data.frame`(`*tmp*`, value = value) :
invalid 'row.names' length
最初,我認為我應該使用類似矩陣的對象,因為在另一項研究中,我從光柵圖像讀取的矩陣中生成了輸出,該矩陣可以正常工作,但無濟於事。 使用矢量作為模型結果來告訴狀態的幫助頁面,但是即使我在使用告訴之前存儲了數據框的列,問題仍然存在。
我想我的主要問題是我不了解與Tell函數結合使用的錯誤消息,所以sob.pars是敏感性分析從同一包中的對象構造函數返回的列表,因此我不知道該對象的行名消息正在引用。
任何提示表示贊賞。
終於發現了問題所在。 該錯誤有點令人誤解。 問題不在於行名,因為它們是相同的,這首先使我很惱火。 他們顯然沒有錯。
實際的問題是sob.pars中的列名稱。 這些都不見了。 一旦添加了這些,一切都將正常運行。 無論如何,還是要感謝rawr(我只是現在才注意到有人對此問題發表了評論,我以為發生這種情況時會通知我,但我想不會)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.