如何通过不同的条件为每一列突出显示数据框中的某些单元格?还可以在系列中突出显示一些数字吗?

我正在使用Python,但我在突出显示数据框中的某些单元格时遇到了一个严重的问题(我真的不明白如何解决)。 我向您表明我的疑问: 我有2个矩阵,两者的形状相同。 该矩阵之一仅由0/1组成,另一个矩阵具有十进制数。 我将突出显示十进制数字组成的矩阵中的元素,但矩阵上的条件为0/1。因此,例如:如果在由0/1构成的矩阵中,我有一个单元格为1,那么我会在另一个矩阵中突出显示同一单元格(例如:在我的矩阵中,您可以看到在第一个单元格中我有1,因此我会突出显示另一个矩阵的第一个单元格(0.000034)。 我真的不知道该怎么写。

我还认为将数据框分成单个列,然后一一处理,然后将所有列放在一起,也许会更容易吗?但是...我没找到如何突出显示Series中的某些元素,因为笔记本对我说Series并没有“应用”属性(当我编写“ Series.style.applyect”时)。有可能吗?>

谢谢您的帮助!

Result = pd.DataFrame({'First':[1,1,1,...],'Second':[1,1,...], '第三':[0,0,...],'第四':[1,0,...]})

Values = pd.DataFrame({'One':[0.000034,0.000043,0.000023,0.000055,0.000034,...],'Two':[0.000011,0.000087,0.000045,0.000065,0.000024,...], '三':[0.000054,0.000026,0.000043,0.000022,0.000024 ...],'四':[0.000011,0.000025,0.000053,0.000036,0.000026,...]})

pqadbc 回答:如何通过不同的条件为每一列突出显示数据框中的某些单元格?还可以在系列中突出显示一些数字吗?

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


def highlight_mask(df,df_mask,color='yellow'):
    '''
    highlight the cells with df_mask.
    '''
    df_mask.replace(1,'background-color: {}'.format(color),inplace=True)
    df_mask.replace(0,'',inplace=True)
    return df_mask


df.style.apply(highlight_mask,df_mask=df_mask,color='red',axis = None)
本文链接:https://www.f2er.com/3165544.html

大家都在问