通过 XLwings 在 Excel 上将数据帧显示为句柄

Display dataframe as a handle on Excel via XLwings

提问人:Dave Lui 提问时间:11/11/2023 最后编辑:TimelessDave Lui 更新时间:11/15/2023 访问量:55

问:

我正在尝试编写一个函数,通过以下方式按句柄返回数据帧:Xlwings

@xw.func
@xw.ret(index=False)
def create_df():
    # initialize data of lists. 
    data = {'Name': ['Tom', 'nick', 'krish', 'jack'], 
        'Age': [20, 21, 19, 18]} 
    df = pd.DataFrame(data) 

    return df 

当应用于 excel 时,它将自动显示整个数据帧。返回数据帧的方式是通过句柄(对于相同的函数)。请问是否有办法在python中做同样的事情?PyXLLXlwings

enter image description here

熊猫 数据帧 XLWINGS公司 pyxll的

评论


答:

0赞 mouwsy 11/12/2023 #1

我不确定我是否正确地理解了你的问题。如果要将数据帧插入到 Excel 工作表的单个单元格中,可以按照以下示例进行定位:

import pandas as pd
import xlwings as xw

f = pd.DataFrame({'Name': ['Tom', 'nick', 'krish', 'jack'],
                  'Age': [20, 21, 19, 18]}
                 )

wb = xw.Book(r"test.xlsx")
ws = wb.sheets[0]

ws["A5"].value = df.to_string()  # "A5" specifies the address of the excel cell.

评论

0赞 Dave Lui 11/13/2023
我想通过 xlwings 在 excel 上调用 create_df 函数,而不是完全显示整个数据帧,我希望 df 显示为仅占用一个单元格的对象。
0赞 mouwsy 11/15/2023
用。df.to_string()