Python使用yfinance提取现金流表中资本支出对应数值的方法
实现方案
首先修正你代码里的笔误:你导入yfinance时用的别名是yf,原有代码里的yk.Ticker写错了,调整后完整提取代码如下:
import yfinance as yf import pandas as pd msft = yf.Ticker("MSFT") # 获取现金流表DataFrame cashflow_df = msft.cashflow # 提取最新年度的Capital Expenditure(资本支出)金额 latest_capex = cashflow_df.loc['Capital Expenditure'].iloc[0] # 提取该数据对应的财报截止日期 latest_report_date = cashflow_df.columns[0].strftime('%Y-%m-%d') # 输出结果 print(f"对应财报日期:{latest_report_date}") print(f"最新年度资本支出金额:{latest_capex:,.2f} 美元")
代码逻辑说明
- yfinance返回的现金流表结构为:行索引是财报项目名称,列是财报截止日期,列默认按时间从新到旧排序,第一列就是最新年度的财报数据
.loc['Capital Expenditure']匹配对应财报项目的整行数据,等价于你Excel中SUMIF匹配项目名称的逻辑.iloc[0]取匹配到的行的第一个值,就是最新年度的对应金额
内容的提问来源于stack exchange,提问作者ComplacentNPC
相关产品推荐
相关产品推荐

