我的问题在下面,但任何有xlrd经验的人都会有兴趣的评论。
我刚刚找到了xlrd,它看起来是一个完美的解决方案,但我在入门时遇到了一些问题。我正在尝试从我从道琼斯工业股票平均价格指数( Dow Jones Industrial Average )当前成分股(链接:)中提取的Excel文件中以编程方式提取数据。
当我打开未修改的文件时,我得到一个讨厌的BIFF错误(无法识别二进制格式)
然而,你可以在这张截图中看到,Excel2008 for Mac认为它是‘Excel1997-2004’格式(截图:)
如果我手动在Excel中打开它,并显式地另存为'Excel 1997-2004‘格式
我用openpyxl编写了将熊猫df写入excel文件的脚本代码。见。
from openpyxl import load_workbook
import pandas as pd
import numpy as np
book=load_workbook("excel_proc.xlsx")
writer=pd.ExcelWriter("excel_proc.xlsx", engine="openpyxl")
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in bo
我使用的是Python 3.7。
每次将excel文件(.xls)下载到特定的下载文件夹位置时,都必须下载该文件,该文件具有唯一的文件名。
然后使用Python和Pandas,我必须打开excel文件并将其读取/转换为数据帧。
我想自动化这个过程,但我在告诉Python获取XLS文件的全名作为变量时遇到了问题,然后pandas将使用该变量:
# add dependencies and set location for downloads folder
import os
import glob
import pandas as pd
download_dir = '/Users/
我有一个看起来像这样的pandas数据帧:
A B C
1 2 =A2+B2
3 4 =A3+B3
我使用Python中的xlsxwriter将其写入Excel文件,并将数据框转换为Excel。现在,当我从Python中读取Excel时,我得到C2的值是0.0,而不是3 (=A2+B2)。但是,如果我手动打开Excel,公式就会被求值,并且在'C2‘中有'3’。所以这个问题发生在从代码中读取的时候。
在Python中,有没有一种方法可以读取带有公式作为值的Excel列?