这是我的DataFrame:

import pandas as pd
df = pd.DataFrame(
    {
        'a': [2, 2, 2, -4, 4, 4, 4, -3, 2, -2, -6],
        'b': [2, 2, 2, 4, 4, 4, 4, 3, 2, 2, 6]
    }
)

当我使用to_excel时,我使用一个函数来突出显示a中的单元格:

def highlight_cells(s):
    if s.name=='a':
        conds = [s > 0, s < 0, s == 0]
        labels = ['background-color: lime', 'background-color: pink', 'background-color: gold']
        array = np.select(conds, labels, default='')
        return array

    else:
        return ['']*s.shape[0]

现在,如果a中的值为正,我想通过添加加号来添加另一个特征.例如,1变为+1.我希望此特性仅适用于第a列.

这是我的try ,但它不起作用.它给我的错误是文章的标题.

df.style.apply(highlight_cells).style.format({'a': '{:+g}'}).to_excel('df.xlsx', sheet_name='xx', index=False)

推荐答案

style.apply返回Styler对象,只需对此做进一步的操作,即

df.style.apply(highlight_cells).format(...)

Python相关问答推荐

TARete错误:类型对象任务没有属性模型'

SQLGory-file包FilField不允许提供自定义文件名,自动将文件保存为未命名

如何制作10,000年及以后的日期时间对象?

Julia CSV for Python中的等效性Pandas index_col参数

用NumPy优化a[i] = a[i-1]*b[i] + c[i]的迭代计算

如何从.cgi网站刮一张表到rame?

修复mypy错误-赋值中的类型不兼容(表达式具有类型xxx,变量具有类型yyy)

如何在python polars中停止otherate(),当使用when()表达式时?

如何在solve()之后获得症状上的等式的值

从spaCy的句子中提取日期

pandas:排序多级列

在matplotlib中删除子图之间的间隙_mosaic

以逻辑方式获取自己的pyproject.toml依赖项

在Python中从嵌套的for循环中获取插值

如何从pandas DataFrame中获取. groupby()和. agg()之后的子列?

Polars Group by描述扩展

pandas:在操作pandora之后将pandora列转换为int

Pandas数据框上的滚动平均值,其中平均值的中心基于另一数据框的时间

如何将验证器应用于PYDANC2中的EACHY_ITEM?

有没有一种方法可以根据不同索引集的数组从2D数组的对称子矩阵高效地构造3D数组?