如何使用Python与yfinance提取季度现金流表指定指标值
解答
首先先修正你原有代码的两处语法错误,否则代码无法正常运行:
- Ticker初始化时股票代码字符串漏了闭合双引号:正确写法为
yf.Ticker("AAPL") - 获取季度现金流属性时错误使用下划线连接,正确写法为点号访问属性:
ticker.quarterly_cashflow
修正后的基础可运行代码:
import yfinance as yf ticker = yf.Ticker("AAPL") q_cashflow = ticker.quarterly_cashflow
yfinance返回的季度现金流表是pandas DataFrame结构:行索引为现金流指标名称,列是pandas内置时间戳格式的财报截止日期,提取指定行列的数值直接用pandas标准的.loc索引器即可。
提取指定指标、指定日期对应值的方法
你要提取「Change To Liabilities」行、2021-06-26列的数值,直接运行以下代码即可:
target_val = q_cashflow.loc["Change To Liabilities", "2021-06-26"] print(target_val)
运行后输出为307000000,和你看到的科学计数法显示的3.070000e+08是同一个值。
常用的其他提取写法
- 提取单个指标的全部季度数据:
# 提取所有季度的负债变动值 change_liab_all = q_cashflow.loc["Change To Liabilities"] - 提取单个季度的全部现金流指标:
# 提取2022-03-26对应季度的所有现金流数据 cf_2022q2 = q_cashflow.loc[:, "2022-03-26"]
提示:如果传入日期字符串匹配不到对应列,先执行
print(q_cashflow.columns)查看实际存储的财报日期,不同公司的财报季度截止日期可能存在1-2天的偏差,不要硬套固定日期。
内容的提问来源于stack exchange,提问作者Lien Serolf
相关产品推荐
相关产品推荐

