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

如何在R中使用sum()函数:从非0值(如i=2到n)开始求和

在R中实现从i=2到n的求和

首先纠正一个误解:sum()函数不会默认从0开始计算到n,它的作用是对传入的数值向量进行求和,求和的范围完全由你传入的向量决定。

要实现从i=2到n的求和,核心是先构造出2到n的数值序列,再传给sum(),具体分两种场景:

  • 场景1:直接对整数2到n求和
    用R的序列运算符:生成2到n的整数向量,再传入sum()即可:

    n <- 10  # 示例n值
    sum(2:n)  # 计算2+3+...+10,结果为54
    
  • 场景2:对关于i的表达式求和(比如i²、1/i等)
    利用R的向量化运算,直接对序列向量应用表达式后求和,无需写循环:

    n <- 10
    # 计算2²+3²+...+10²
    sum((2:n)^2)
    # 计算1/2 + 1/3 + ... + 1/10
    sum(1/(2:n))
    

    如果表达式逻辑复杂,也可以用sapply()遍历序列计算每个值再求和:

    sum(sapply(2:n, function(i) {
      # 这里写你的复杂表达式,比如i*log(i)
      i * log(i)
    }))
    

总结:sum()的求和范围完全由你传入的向量控制,只要构造出正确的2到n的序列(或序列对应的计算值),就能得到想要的结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 12:45:30