import pandas as pd
import numpy as np
df = pd.DataFrame({'A': 'foo bar foo'.split(),
'B': 'one one two'.split(),
'C': np.arange(3), 'D': np.arange(3) * 2})
j = [{'bgcolor': "#55aa2a"}, {'bgcolor': "#d42a2a"}, {'bgcolor': "#d42a2a"}]
df2 = pd.DataFrame({'E': j, 'F': j, 'G': j, 'H': j})
上面的代码生成两个数据帧,df1
是一个标准框架并且df2
是一个由字典组成的框架(每个单元格都有一个字典作为其值)。
我想使用的细胞df2
来设置单元格的样式df
就位,即细胞df[0,1]
将取单元格的值df2[0,1]
并使用它作为它的风格
例子:
def highlight(df,df2):
df[0,1] = '{}'.format(df2[0,1])
return df
(应用于整个框架的除外)
这应该给出背景颜色df[0,1]
as df2[0,1]="55aa2a"
但返回一个KeyError
打电话后df = df.style.apply(highlight, df2=df2).render()
是否可以使用细胞df2
来设置单元格的样式df1
?