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

使用R语言Bass扩散模型处理年度数据时遇‘vOut未找到’错误求助

解决R语言diffusion包运行Bass模型时的"Object 'vOut' not found"错误

问题重现

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

library(diffusion)

years <- c(2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023)
adopters <- c(1000, 2500, 6000, 13000, 28000, 45000, 72000, 110000)

bass_model <- diffusion(years, adopters, type = "bass")

错误信息:

Error in structure(list(type = type, call = sys.call(), w = w, y = y, : Object 'vOut' not found

解决方案

这个错误的核心原因是diffusion函数的第一个参数(时间变量)需要是从1开始的连续整数索引,而非实际年份数值。调整时间参数格式即可解决,具体步骤如下:

  1. 将实际年份替换为从1开始的时间索引序列
  2. 重新运行模型

修改后的代码:

library(diffusion)

# 生成对应年份的连续时间索引(1对应2016,2对应2017,以此类推)
time_index <- seq_along(years)
adopters <- c(1000, 2500, 6000, 13000, 28000, 45000, 72000, 110000)

# 拟合Bass模型
bass_model <- diffusion(time_index, adopters, type = "bass")

# 查看模型结果
summary(bass_model)

补充说明

如果调整参数后仍报错,建议先更新diffusion包到最新版本:

update.packages("diffusion")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 23:08:15