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

R语言自定义函数无输出问题求助:getQuote结果无法返回

问题分析与解决

在R语言中,直接执行代码能正常获取交易时间,但封装成自定义函数后调用却返回函数定义本身,核心原因是你的函数缺少返回结果的逻辑——R函数默认会返回函数体最后一行表达式的结果,若函数体未将目标结果作为最终执行的表达式,就会出现这种异常情况。

正确的函数写法示例

你需要确保函数体最终输出的是交易时间结果,两种可行写法如下:

写法1:利用R默认返回特性

依赖R的默认规则,将获取交易时间的表达式放在函数体最后一行,R会自动返回该结果:

trade_time <- function(ticker) {
  quantmod::getQuote(ticker)$'Trade Time'
}

写法2:显式使用return语句

通过return()显式指定返回结果,逻辑更直观:

trade_time <- function(ticker) {
  trade_result <- quantmod::getQuote(ticker)$'Trade Time'
  return(trade_result)
}

正确调用方式

调用时必须传入参数并加括号执行函数,直接引用函数对象会返回其定义:

# 正确调用,返回交易时间
trade_time(c("AAPL", "TSLA"))

# 错误调用,返回函数定义本身
trade_time

总结:你的函数缺少的是将目标结果作为返回值的逻辑,要么让获取交易时间的表达式成为函数体最后一行,要么显式用return()返回结果,同时要保证调用时正确执行函数(加括号传参)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 00:01:05