You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R调用SimDesign包bias函数报ncol匹配错误的排查解决方法

R调用SimDesign::bias()报维度不匹配错误排查

问题复现

运行以下代码时触发报错:

install.packages("SimDesign")
library(SimDesign)
actual_temp<-c(68.3,70,72.4,71,67,70)
predicted_temp<-c(67.9,69,71,5,70,67,69)
bias(actual_temp, predicted_temp)

返回的报错信息为:

Error in bias(actual_temp, predicted_temp) : 
  ncol(estimate) == length(parameter) is not TRUE

错误原因

触发报错的核心原因是传入函数的两个向量长度不匹配:

  • 作为真实值传入的actual_temp一共包含6个元素
  • 作为预测值传入的predicted_temp一共包含7个元素
    bias()函数计算偏差时需要真实值和预测值按位置一一对应,要求两个输入的维度/长度完全一致,长度不匹配时就会抛出上述维度校验失败的错误。
    额外检查可以发现predicted_temp中存在一个明显不符合温度范围的异常值5,结合其余数值均处于67-72的区间判断,是手动输入数据时出现了手误:要么多输入了一个错位的数值,要么漏写了对应位置的真实温度值。

修复方法

核对原始采集的温度数据,修正两个向量的长度和数值,保证真实值和预测值一一对应即可正常运行。参考修正代码:

# 按数据逻辑修正预测值,移除错位的异常值,保证长度与真实值一致
actual_temp <- c(68.3,70,72.4,71,67,70)
predicted_temp <- c(67.9,69,71.5,70,67,69)
bias(actual_temp, predicted_temp)

同类问题快速排查技巧

后续使用SimDesign包的模型评价类函数如果遇到同类维度校验报错,优先按以下顺序排查:

  • 检查传入的真实值、预测值的长度/维度是否完全一致
  • 检查手动输入的数据是否存在多打、漏打、数值错位的手误
  • 检查是否存在数据读取、切片过程中产生的维度异常

内容的提问来源于stack exchange,提问作者Elysha Smith

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.03 00:57:25