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

R语言用tidyquant计算股票对数收益率出现mutate嵌套列错误如何解决

错误原因

你调用tq_transmute()时mutate_fun参数的写法不符合tidyquant的语法规范:

  • mutate_fun仅需传入函数名本身,不需要附带括号和参数
  • 函数的相关参数要单独作为tq_transmute()的参数传入,不能嵌套在mutate_fun的赋值语句中
  • 原代码中periodReturn(,留空的第一个参数本身也不符合R函数调用的语法要求
修正后的代码

仅需要修改计算对数收益率的代码段即可:

# 计算对数收益率
log_ret_tidy <- price_data %>%
  group_by(symbol) %>%
  tq_transmute(select = adjusted,
               mutate_fun = periodReturn,
               period = 'daily',
               col_rename = 'ret',
               type = 'log')
head(log_ret_tidy)
效果说明

运行修正后的代码即可正常按股票分组计算每只股票的每日对数收益率,输出结果包含symbol(股票代码)、date(日期)、ret(对数收益率)三列数据,符合预期需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.10 08:48:03