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

R语言调用自定义h1函数报object 'Sum' not found错误如何修复

R代码错误修正方案

需修正的问题点

  • 函数定义缺失左大括号:R语言中当函数包含多行代码时,必须用{}包裹所有函数内部逻辑。原代码h1 <- function(x,n)后未添加左大括号{,导致R判定函数体仅包含Sum=0这一行代码,后续循环逻辑不属于函数内部,调用函数时函数作用域内不存在Sum变量,触发找不到对象的报错。
  • 存在多余的右大括号:原代码末尾多写了一个},会导致语法解析异常。
  • 缺少返回值声明(可选优化):R默认返回函数最后一行表达式的运算结果,显式声明返回值可以提升代码可读性。

修正后代码

h1 <- function(x,n) {
  Sum = 0
  # 循环计算等比数列求和
  for (i in seq(from=0,to=n)) {
    Sum = Sum + x^i
  }
  return(Sum)
}

调用测试

执行h1(0.3,55)会返回等比数列求和结果:1.428571,和等比数列求和公式(1 - x^(n+1))/(1-x)的计算结果一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 13:09:02