我有一个包含值的数据框并将其设置为 excel 中的范围,如何隐藏索引?

I have a dataframe with values and setting it to a range in excel, how to hide the index?

  1. 我想在粘贴到 sheet 范围时隐藏索引

    sheet.range('B22').values = df
    
  2. 如何隐藏列名(DataName)?

    print(df)
    
    Index Data  Name
    1      A     X
    2      B     Y
    3      C     Z
    4      D     L
    

配合xlwings使用

import xlwings as xw
range1=df[['Data','Name']].values
wb = xw.Book('your_file.xlsx')
sht = wb.sheets['Sheet1']
sht.range('B22').value = range1

但是,一般来说,使用 pd.to_excel 会更容易。我认为这里有答案 [Python to_excel without row names (index)? and also here [

writer = pd.ExcelWriter('your_file.xlsx', engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1', index=False, startrow=21,startcol=1)

如果要删除 'Data' 和 'Name',您还可以将 'header=None' 添加到 to_excel 函数。

将数据帧写入 Excel 时,您可以执行以下操作来隐藏列名和索引:

df.to_excel('test.xlsx', index=False, header=False)