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

R语言构建DataFrame遍历参数d计算s1_limiting_ratio方法

实现思路
  • 第一步生成参数d的取值序列:使用R内置的seq()函数,直接生成0.05到0.5、步长0.05的所有d值,不需要手动逐个输入
  • 其余参数都是固定常量,直接提前定义即可。R原生支持向量化运算,把d的序列传入公式后,会自动为每个d值计算对应的衍生指标,不需要手动编写循环
  • 按照给出的计算公式,依次计算每个d对应的s1_star、s2_star、s1_limiting_equation,最后算出核心指标s1_limiting_ratio
  • 将d的取值和所有计算结果按列合并,就能得到标准的R DataFrame结果表
完整实现代码
# 定义固定常量参数
r <- 0.7
g1 <- 0.00000000175
g2 <- 0.000000296
v1 <- 0.000000296
v2 <- 0.000000296
k1 <- 2.8
k2 <- 7.7
s01 <- 1
s02 <- 400

# 生成d的取值序列:0.05到0.5,步长0.05
d_seq <- seq(from = 0.05, to = 0.5, by = 0.05)

# 向量化计算所有衍生指标,自动适配d的每个取值
s1_star <- (r*g1*k1*d_seq)-((v1*(r-d_seq))-r*g1*d_seq)
s2_star <- (r*g2*k2*d_seq)-((v2*(r-d_seq))-r*g2*d_seq)
s1_limiting_equation <- s1_star+((s02-s2_star)*(g1/g2))
s1_limiting_ratio <- s02/s1_limiting_equation

# 合并为DataFrame
result_df <- data.frame(
  d = d_seq,
  s1_star = s1_star,
  s2_star = s2_star,
  s1_limiting_equation = s1_limiting_equation,
  s1_limiting_ratio = s1_limiting_ratio
)

# 打印查看全量结果
print(result_df)
补充说明

运行代码后生成的result_df就是标准的R DataFrame结构,每一行对应一个d取值下的所有计算结果,最后一列就是核心关注的s1_limiting_ratio。如果后续需要调整d的范围、步长,或者修改其他固定参数的取值,直接修改对应位置的赋值即可,不需要改动后续计算逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.11 16:16:23