我正在尝试使用python读取xlsb文件中的电子表格,并且我曾经在下面的代码中这样做。我在堆栈溢出中找到了代码,并且我确定它会读取电子表格行中的每一列并将其附加到数据框。如何修改此代码,使其仅读取/追加电子表格的特定列,即我只想将B到D列中的数据追加到数据框中。
任何帮助将不胜感激。
import pandas as pd
from pyxlsb import open_workbook as open_xlsb
df = []
with open_xlsb('some.xlsb') as wb:
with wb.get_sheet(1) as sheet:
for row in sheet.rows():
df.append([item.v for item in row])
df = pd.DataFrame(df[1:], columns=df[0])
答案 0 :(得分:1)
pyxlsb本身不能执行此操作,但是可以在xlwings的帮助下执行。
import pandas as pd
import xlwings as xw
from pyxlsb import open_workbook as open_xlsb
with open_xlsb(r"W:\path\filename.xlsb") as wb:
Data=xw.Range('B:D').value
#Creates a dataframe using the first list of elements as columns
Data_df = pd.DataFrame(Data[1:], columns=Data[0])