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

使用Refinitiv API的eikon包时,无法从元组提取数据计算

问题解决:Refinitiv Eikon API 返回元组导致计算错误

问题根源

ek.get_data() 方法的返回值是一个元组,结构为 (pandas.DataFrame, None),其中第一个元素是包含股票数据的DataFrame,第二个元素是状态信息(此处为None)。直接对整个元组test进行打印或计算操作,会触发元组相关错误。

解决方案

先从元组中提取出DataFrame,再进行后续计算,有两种常用方式:

方式1:解构赋值(推荐)

调用get_data时直接拆分元组,单独获取DataFrame:

# 获取数据并拆分元组
df, _ = ek.get_data(['IBM','AAPL.O'],['TR.DPSmean','TR.PriceClose'])
# 查看提取后的DataFrame
print(df)
# 执行计算:Price Close / Dividend Per Share - Mean
df['Price/DPS Ratio'] = df['Price Close'] / df['Dividend Per Share - Mean']
print(df)

方式2:通过索引提取

如果结果已存储在test变量中,直接通过索引[0]获取元组内的DataFrame:

# 从已有的test元组中提取DataFrame
df = test[0]
# 执行计算
df['Price/DPS Ratio'] = df['Price Close'] / df['Dividend Per Share - Mean']
print(df)

执行结果示例

运行上述代码后,会得到包含计算列的DataFrame:

Instrument  Dividend Per Share - Mean  Price Close  Price/DPS Ratio
0        IBM                      6.675       140.88        21.105618
1     AAPL.O                    0.97507       132.23       135.610775

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 03:31:12