【发布时间】:2020-07-25 08:16:11
【问题描述】:
我对 Python 非常陌生(没有任何编码历史或技能)。我一直在尝试自动从雅虎提取数据,并根据我在网上找到的任何内容构建了以下程序。所以请原谅糟糕的编码尝试(但它对我来说几乎完美无缺)。
- 我正在尝试下载上市金融股票数据(您将在代码中看到)
- 我希望它以原始形式下载到特定的 Excel 工作表(因为我将它链接到另一个运行我的计算的 Excel 工作表)。
这就是问题所在。以下代码完美适用于所有美国股票、一堆欧盟股票,但不适用于澳大利亚/新西兰和一些欧盟股票,其中我收到错误:“长度不匹配:预期轴有 4 个元素,新值有 2 个元素”
我完全被难住了。它以前可以工作 - 然后我开始使用 matplotlib,现在澳大利亚/新西兰(和一些欧盟)股票没有任何效果。
任何帮助都非常感谢,再次,我是全新的,所以请放轻松:这是我的代码:
import pandas as pd
import yfinance as yf
import yahoofinancials
from yahoo_fin.stock_info import *
from openpyxl import load_workbook
x = input("Enter Stock: ")
a = (x)
datatoexcel = pd.ExcelWriter("File.xlsx",engine='xlsxwriter')
data = stats_df = si.get_stats(a)
stats_df.to_excel(datatoexcel, sheet_name='Stats')
data = StatsVal_df = get_stats_valuation(x)
StatsVal_df.to_excel(datatoexcel, sheet_name='Stats Val')
data = BS_df = si.get_balance_sheet(a)
BS_df.to_excel(datatoexcel, sheet_name='Balance Sheet')
data = IS_df = si.get_income_statement(a)
IS_df.to_excel(datatoexcel, sheet_name='PnL')
data = CF_df = si.get_cash_flow(a)
CF_df.to_excel(datatoexcel, sheet_name='CashFlow')
Data = Data_df = get_data(x)
Data_df.to_excel(datatoexcel, sheet_name='Historical Price History')
datatoexcel.save()
问题主要包含在:
data = stats_df = si.get_stats(a)
stats_df.to_excel(datatoexcel, sheet_name='Stats')
例如,我将运行“GOOGL”/“AAPL”/“MSFT”/“BSX”/“BMW.DE”,它运行良好。然而,当我运行“NAN.AX”/“CBA.AX”或任何其他类似的股票时 - 我收到错误:长度不匹配:预期轴有 4 个元素,新值有 2 个元素
【问题讨论】:
标签: python excel finance yahoo