当前位置: 首页 > 知识库问答 >
问题:

条件格式Python单元格

闽朝
2023-03-14

我试图根据单元格的值对数据帧进行着色、高亮显示或更改。e、 g.如果每行上的单元格大于该行第一列中的单元格,则将该单元格高亮显示为红色(或任何其他颜色),否则保持原样。

我在这里写了一个for循环:

for index in range(0, df.shape[0]):
    for column in range(1, df.shape[1]): # from 1 not from 0 because I only need # to compare the 2nd to the last cell of each row with the 1st cell in the row 

        if df.iloc[index][column] - df_BDE_n_months_avg_std_pct.iloc[index][0] > 0:
            then "PLEASE PUT YOUR HELP HERE, I NEED A PIECE OF CODE THAT CAN HIGHLIGHT THE CELL"
        else:
            "DO NOTHING"

到目前为止,我还没有找到一种方法。任何帮助都会很好。

共有2个答案

年运珧
2023-03-14
import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.rand(4,3))
df.style.applymap(lambda x: 'background-color : yellow' if x>df.iloc[0,0] else '')
蒋正平
2023-03-14

从样式文档:

通过使用数据帧,可以应用条件格式,即数据帧的可视样式,具体取决于其中的数据。样式属性。

import pandas as pd
df = pd.DataFrame([[2,3,1], [3,2,2], [2,4,4]], columns=list("ABC"))

df.style.apply(lambda x: ["background: red" if v > x.iloc[0] else "" for v in x], axis = 1)

编辑:要设置特定单元格的格式,可以添加条件检查器,以使用序列检查元素的名称。iteritems()或使用enumerate()检查索引,例如,如果要从第3列开始格式化,可以使用enumerate并检查索引:

df = pd.DataFrame([[2,3,-3], [3,2,7], [2,4,4]], columns=list("ABC"))

df.style.apply(lambda x: ["background-color: #ff33aa" 
                          if (i >= 2 and (v > x.iloc[0] + x.iloc[1] 
                                          or v < x.iloc[0] - x.iloc[1])) 
                          else "" for i, v in enumerate(x)], axis = 1)
 类似资料:
  • 我正在使用谷歌表单作为日常仪表板。我需要的是根据另一个单元格C5的值更改单元格B5的背景色。如果C5大于80%,则背景色为绿色,但如果低于,则为琥珀色/红色。 这是Google Sheets功能提供的还是我需要插入脚本?

  • 我有一个excel,其中第1行中有从第1列到第15列的值。最后的每个单元格值都有一个数字。 我想创建另一行,该行根据结束编号合并单元格,并将相应的文本放入合并的单元格中。但是行值仍然需要保持顺序。 例如,,4等等。现在我想在第2行中为ABC3创建前3个单元格的合并,并放置。我需要在同一行2中创建5个合并的单元格来放置。之后,将4个单元格合并到同一行并放置等等。有什么想法如何实现这一点?

  • 本文向大家介绍Java 设置Excel条件格式示例代码(高亮条件值、应用单元格值/公式/数据条等类型),包括了Java 设置Excel条件格式示例代码(高亮条件值、应用单元格值/公式/数据条等类型)的使用技巧和注意事项,需要的朋友参考一下 概述 在Excel中,应用条件格式功能可以在很大程度上改进表格的设计和可读性,用户可以指定单个或者多个单元格区域应用一种或者多种条件格式。本篇文章,将通过Jav

  • 问题内容: 我正在尝试使用apache poi java创建一个空的excel模板。我需要添加一个规则- 当列号为。填充3,然后需要以某种颜色突出显示从7到12的列(作为用户的强制性指示)。 我可以在下面的代码中找到在同一单元格上满足条件时为单元格着色的代码。但是我想在当前单元格满足条件时为不同的单元格上色/格式化。 但是我想要的是当满足rule1时,然后为另一个单元格区域着色。 poi可能出现这

  • 但我想要的是当规则1满足时,然后给不同的单元格区域着色。 在poi中这可能吗?怎么可能?

  • setColumn 样式影响范围为整列。 设置 range 参数为 A1:D1,第一反应是设置第一行的前四个单元格样式,但是实际效果确是设置 第一列、第二列、第三列、第四列 整列。 函数原型 setColumn(string $range, double $width [, resource $formatHandler]); string $range $config = ['path' =>

  • setRow 样式影响范围为整行。 设置 range 参数为 A1:D1,第一反应是设置第一行的前四个单元格样式,但是实际效果确是设置 第一行整行。 如果是 A1:B3 ,就会设置 第一行、第二行、第三行样式,因为单元格范围覆盖了 第一行、第二行、第三行。 函数原型 setRow(string $range, double $height [, resource $formatHandler]);

  • 问题内容: 在下面的cellTemplate中显示数据时如何添加条件: 预期结果应为行状态显示。 这是the 子 提前致谢。 问题答案: 您必须使用。 在您的标记中,定义网格持有人,如下所示。 并在您的控制器中使用以下代码: 或使用角度滤镜。 请注意,这仅 呈现 文本。最好的方法是在ui-grid中使用它之前先转换为具有真实文本状态。以防万一您以后要进行一些基于文本的过滤。 这是一个柱塞