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

如何将Pandas股票数据数组导出至Excel并自动设置日期?

问题解答

原始代码

import pandas as pd
import yfinance as yf
import pendulum
from datetime import date

today = str(date.today())
print(today)

pd.options.display.max_rows=390

start = pendulum.parse('2022-12-5 08:30')
end = pendulum.parse('2022-12-5 15:00')

stock = input("Enter a stock ticker symbol: ")
print(stock + " 1 Minute Data")
print(start)

print(yf.download(tickers= stock, interval="1m", start=start, end=end))

问题1:将Pandas数据干净导出至Excel表格

要实现干净导出,只需将yf.download的结果保存为DataFrame变量,再调用Pandas的to_excel方法即可,步骤如下:

  1. 替换原打印数据的代码,将数据存入变量:
# 把下载结果保存到df变量
df = yf.download(tickers=stock, interval="1m", start=start, end=end)
  1. 调用to_excel导出,可自定义文件名(比如按股票代码命名):
df.to_excel(f"{stock}_1min_data.xlsx", engine="openpyxl")

注:如果未安装openpyxl依赖,先执行pip install openpyxl安装,这是Pandas导出xlsx格式的常用引擎。

导出后的Excel会完整保留时间索引、列名和所有数据,格式规整无冗余。

问题2:用当前日期替代手动日期报错的解决

报错多因date.today()生成的字符串格式与pendulum解析逻辑不兼容,或类型混用导致。直接用pendulum自身的日期方法处理更稳妥,推荐两种实现方式:

方式1:生成当日日期字符串拼接时间后解析

# 获取当日标准格式日期字符串
today_date = pendulum.today().format('YYYY-MM-DD')
# 拼接时间后生成起止时间
start = pendulum.parse(f"{today_date} 08:30")
end = pendulum.parse(f"{today_date} 15:00")

方式2:直接调整当前时间到当日指定时刻

# 将当前时间调整为当日8:30
start = pendulum.now().set(hour=8, minute=30, second=0)
# 将当前时间调整为当日15:00
end = pendulum.now().set(hour=15, minute=0, second=0)

注:如果需要对应美股交易时区,可在now()中指定时区,比如pendulum.now('America/New_York')

替换后完整可运行代码:

import pandas as pd
import yfinance as yf
import pendulum

pd.options.display.max_rows=390

# 用当前日期生成交易时段起止时间
today_date = pendulum.today().format('YYYY-MM-DD')
start = pendulum.parse(f"{today_date} 08:30")
end = pendulum.parse(f"{today_date} 15:00")

stock = input("Enter a stock ticker symbol: ")
print(f"{stock} 1 Minute Data")
print(start)

# 下载数据并导出
df = yf.download(tickers=stock, interval="1m", start=start, end=end)
df.to_excel(f"{stock}_1min_data.xlsx", engine="openpyxl")
# 可选:打印数据查看
print(df)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 02:46:18