这是我的DataFrame.

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

在导出到Excel时,我只想为第a列的正数添加一个加号.例如,1变为+1.请注意,我也有NaN个值.我希望它们在Excel中是空单元格,类似于Pandas在处理to_excel.中的NaN值时的默认行为

我已经try 了许多解决方案.这是其中之一.但它在Excel中不起作用.

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

推荐答案

如何使用callable:

(df.style.format({'a': lambda x: f'{x:+g}' if np.isfinite(x) else ''})
   .to_excel(r'/tmp/df.xlsx', sheet_name='xx', index=False)
)

Alternative callable: 100

输出(Jupyter):

enter image description here

Python相关问答推荐

从webhook中的短代码(而不是电话号码)接收Twilio消息

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

如何将ctyles.POINTER(ctyles.c_float)转换为int?

如何记录脚本输出

如何列举Pandigital Prime Set

将9个3x3矩阵按特定顺序排列成9x9矩阵

在Python argparse包中添加formatter_class MetavarTypeHelpFormatter时, - help不再工作""""

实现神经网络代码时的TypeError

为什么\b在这个正则表达式中不解释为反斜杠

Python pint将1/华氏度转换为1/摄氏度°°

如何在Python Pandas中填充外部连接后的列中填充DDL值

Python类型提示:对于一个可以迭代的变量,我应该使用什么?

为用户输入的整数查找根/幂整数对的Python练习

如何使用matplotlib查看并列直方图

当HTTP 201响应包含 Big Data 的POST请求时,应该是什么?  

Matplotlib中的曲线箭头样式

我怎样才能让深度测试在OpenGL中使用Python和PyGame呢?

在不中断格式的情况下在文件的特定部分插入XML标签

pyspark where子句可以在不存在的列上工作

如何将ManyToManyfield用于Self类