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

构建NN模型时as.formula函数报错:attempt to set an attribute on NULL的解决

问题分析与修复方案

错误原因

as.formula()函数要求输入的字符串必须符合R语言公式的标准格式——必须包含~符号,用于分隔响应变量和自变量集合。你当前拼接的字符串只有自变量部分(label1 + label2 + ... + label9),缺少公式的核心结构(比如~前缀或完整的响应变量 ~ 自变量格式),导致函数无法生成有效的公式对象,进而触发错误。

修复方法

根据你的需求,分两种场景修复:

场景1:需要指定响应变量(比如响应变量名为target)

如果你的神经网络模型需要明确响应变量,只需在拼接的自变量字符串前添加"target ~ ",再转换为公式:

# 拼接自变量部分
labels <- paste('label', seq(1,8,1), sep='', collapse = ' + ')
labels <- paste(labels, '+', 'label9')

# 添加响应变量与~,转换为公式
final_formula <- as.formula(paste("target ~", labels))

场景2:仅需自变量集合(部分模型支持)

如果只需要生成包含所有label的自变量公式结构,至少要添加~前缀:

labels <- paste('label', seq(1,8,1), sep='', collapse = ' + ')
labels <- paste(labels, '+', 'label9')

# 添加~前缀,转换为公式
final_formula <- as.formula(paste("~", labels))

执行上述代码后,final_formula会生成你需要的公式结构:

  • 场景1:target ~ label1 + label2 + label3 + label4 + label5 + label6 + label7 + label8 + label9
  • 场景2:~ label1 + label2 + label3 + label4 + label5 + label6 + label7 + label8 + label9

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 16:50:19